牐 下列各題a)、b)、c)、d)四個選項中,只有一個選項是正確的,請將正確選項塗
牐 在答題卡的相應位置上,答在試卷上不得分。
牐 (1)以下不能在“工程資源管理器”視窗中列出的檔案類型是
牐 a).bas b).res c).fnn d).ocx
(2)以下關於窗體的描述中,錯誤的是
牐 a)執行unloadfoml語句後,窗體fonnl消失,但仍在記憶體中
牐 b)窗體的ioad事件在載入窗體時發生
牐 c)當窗體的enabled屬性為false時,通過滑鼠和鍵盤對窗體的操作都被禁止
牐 d)窗體的height、width屬性用於設定窗體的高和寬
(3)下列可作為v2sualbasic變數名的是
牐 a)a#a b)4a c)? xy d)consta
(4)設有如下的記錄類型
牐 type student
牐 numberas string
牐 name as string
牐 age as integer
牐 end type
牐 則正確引用該記錄類型變數的代碼是
牐 a) student.name=”張紅” b) dim as student
牐 s.name=”張紅”
牐 c) dim s as type student d) dim s as type
牐 s.name=”張紅” s.dame=”張紅”
(5)函式string(n,“str”)的功能是
牐 a)把數值型數據轉換為字元串
牐 b)返回由n個字元組成的字元串
牐 c)從字元串中取出n個字元
牐 d)從字元串中第n個字元的位置開始取子字元串
(6)將數學表達式cos2(a+b)+5e2寫成visual basic的表達式,其正確的形式是
牐 a)cos(a+b)a2十5。exp(2) b)cos^2(a+b)+5*exp(2)
牐 c)cos(a+b)^2十5*ln(2) d)cos^2(a+b)+5*ln(2)
(7)在窗體上畫一個命令按鈕,名稱為commandl。單擊命令按鈕時,執行如下事件過
牐 程:
牐 prlvate sub commandl—c1icko
牐 a$="software and hardware"
牐 b(a$,8)
牐 c$=mid(a$,1,8)
牐 msgbox a$,,b$,c$,1
牐 end sub
牐 則在彈出的信息框的標題欄中顯示的信息是
牐 a)software and hardware b)software c)hardwafe d)1
(8)執行如下語句:
牐 a=inutbox(”today”,”tomorrow,”yesterday”,,,"day before yesterday",5)
牐 將顯示一個輸入對話框,在對話框的輸入區中顯示的信息是
牐 a)today b)tomorrow c)yesterday d)day before yesterday
(9)表示滾動條控制項取值範圍最大值的屬性是
牐 a)max b)largechange c)value d)max—min
(10)在窗體上畫一個名稱為listl的列表框,一個名稱為labell的標籤。列表框中顯示
牐 若干城市的名稱。當單擊列表框中的某個城市名時,在標籤中顯示選中城市的名稱。
牐 下列能正確實現上述功能的程式是
牐 a) private sub listl_click() b)private sub listl_c1ick()
牐 labell.caption=list1.listlndex labell.nanle=listl.listindex
牐 end sub .end sub
牐 程式運行後,如果單擊命令按鈕,則在窗體上顯示的內容是
牐 a)空白 b)錯誤提示 c)北京 d)上海
11、在窗體上畫一個名稱為command1的命令按鈕,然後編寫如下事件過程:
private sub command1click()
x=0
n=inputbox(″″)
for i=1 to n
for j=1 to i
x=x+1
next j
next i
print x
end sub
程式運行後,單擊命令按鈕,如果輸入3,則在窗體上顯示的內容是()
a、3 b、4 c、5 d、6
12、以下關於選單的敘述中,錯誤的是()
a、在程式運行過程中可以增加或減少選單項
b、如果把一個選單項的enabled屬性設定為false,則可刪除該選單項
c、彈出式選單在選單編輯器中設計
d、利用控制項數組可以實現選單項的增加或減少
13痹詿疤逕匣三個單選按鈕,組成一個名為chkoption的控制項數組。用於標識各個控制項數組元素的參數是()
a、tag b、index c、listindex d、name
14痹詿疤逕匣一個命令按鈕,名稱為command1,然後編寫如下事件過程:
option base 0
private sub command1click()
dim city as variant
city=array(″北京″,″上海″,″天津″,″重慶″)
print city1
end sub
程式運行後,如果單擊命令按鈕,則在窗體上顯示的內容是()
a、空白 b、錯誤提示 c、北京 d、上海
15、假定有以下函式過程:
function fun(s as string) as string
dim s1 as string
for i=1 to len(s)
s1=ucase(mid(s,i,1))+s1
next i
fun=s1
end function
在窗體上畫一個命令按鈕,然後編寫如下事件過程:
private sub command1click()
dim str1 as string,str2 as string
str1=inputbox(″請輸入一個字元串″)
str2=fun(str1)
print str2
end sub
程式運行後,單擊命令按鈕,如果在輸入對話框中輸入字元串“abcdefg”,則單擊“確定”按鈕後在窗體上的輸出結果為()
a、abcdefg b、abcdefg c、gfedcba d、gfedcba
(16)設有語句
牐 open "c:\test.dat" for output as#1
牐 則以下錯誤的敘述是
牐 a)該語句打開c盤根目錄下一個己存在的檔案test.dat
牐 b)該語句在c盤根目錄下建立一個名為test.dat的檔案
牐 c)該語句建立的檔案的檔案號為1
牐 d)執行該語句後,就可以通過print#語句向檔案test.dat中寫入信息
(17)以下敘述中錯誤的是
牐 a)用shell函式可以調用能夠在windows下運行的應用程式
牐 b)用shell函式可以調用執行檔,也可以調用visualbasic的內部函式
牐 c)調用shell函式的格式應為:<變數名>=shell(……)
牐 d)用shell函式不能執行dos命令
(18)以下關於過程及過程參數的描述中,錯誤的是
牐 a)過程的參數可以是控制項名稱
牐 b)用數組作為過程的參數時,使用的是“傳地址”方式
牐 c)只有函式過程能夠將過程中處理的信息傳回到調用的程式中
牐 d)窗體可以作為過程的參數
(19)在窗體上畫一個名稱為txta的文本框,然後編寫如下的事件過程:
牐 private sub txta_keypress(keyascii as integer)
牐 end sub
牐 若焦點位於文本框中,則能夠觸發keypress事件的操作是
牐 a)單擊滑鼠 b)雙擊文本框
牐 c)滑鼠滑過文本框 d)按下鍵盤上的某個鍵
(20)目錄列表框的path屬性的作用是
牐 a)顯示當前驅動器或指定驅動器上的路徑
牐 b)顯示當前驅動器或指定驅動器上的某目錄下的檔案名稱
牐 c)顯示根目錄下的檔案名稱
牐 d)只顯示當前路徑下的檔案
(21)假定有如下事件過程:
牐 private sub form_mousedown(button as integer,shift as integer, x as single,y as
牐 single)
牐 if button=2 then
牐 popupmenu popform
牐 end if
牐 end sub
牐 則以下描述中錯誤的是
牐 a)該過程的功能是彈出一個選單
牐 b)popform 是在選單編輯器中定義的彈出式選單的名稱
牐 c)參數x、y指明滑鼠的當前位置
牐 d)button=2 表示按下的是滑鼠左鍵
(22)以下能夠正確計算n!的程式是
牐 a) private sub commandl_click()
牐 n=5:x=1
牐 do
牐 x=x*1
牐 i=i十1
牐 loop while i<n
牐 print x
牐 end sub
牐 b) private sub commandl_click()
牐 n=5: x=1:i=1
牐 do
牐 x=x*1
牐 i=i十1
牐 loop while i<n
牐 print x
牐 end sub
牐 c)private sub commandl_click()
牐 n=5:x=1:i=1
牐 do
牐 x=x*1
牐 i=i十1
牐 loop while i<=n
牐 print x
牐 end sub
牐 d)private sub commandl_c1ick()
牐 n=5:x=1:i=1
牐 do
牐 x=x*l
牐 i=i十1
牐 loop while i>n
牐 print x
牐 end sub
(23)在窗體上畫一個名稱為commandl的命令按鈕,再畫兩個名稱分別為labell、label2
牐 的標籤,然後編寫如下程式代碼:
牐 private x as integer
牐 private sub commandl—click()
牐 x=5:y=3
牐 call proc(x,y)
牐 labell.caption=x
牐 label2.caption=y
牐 end sub
牐 private sub proc(byval a as integer,byval b as hteger)
牐 x=a* a
牐 y=b十b
牐 end sub
牐 程式運行後,單擊命令按鈕,則兩個標籤中顯示的內容分別是
牐 a)5和3 b)25和3 c)25和6 d)5和6
(24)在窗體上畫一個名稱為commandl的命令按鈕,一個名稱為labell的標籤,然後
牐 編寫如下事件過程:
牐 private sub commandl_c1ick()
牐 s=0
牐 for i=1 t0 15
牐 x=2*i一1
牐 1f x mod 3=0 then s=s十1
牐 nexti
牐 labell.caption=s
牐 end sub
牐 程式運行後,單擊命令按鈕,則標籤中顯示的內容是
牐 a)1 b)5 c)27 d)45
(25)在窗體上畫一個名稱為commandl的命令按鈕和三個名稱分別為labell、label2、
牐 label3的標籤,然後編寫如下代碼:
牐 private x as integer
牐 private sub command1_c1ick()
牐 static y as integer
牐 dimz as integer
牐 n=10
牐 z=n十z
牐 y=y十z
牐 x=x十z
牐 labell.caption=x
牐 label2.caption=y
牐 label3.caption=z
牐 end sub
牐 運行程式,連續三次單擊命令按鈕後,則三個標籤中顯示的內容分別是
牐 a)10 10 10 b)30 30 30 c)30 30 10 d)10 30 30
(26)設在窗體上有一個名稱為commandl的命令按鈕,並有以下事件過程:
牐 private sub commandl_c1ick()
牐 static b as variant
牐 b=array(1,3,5,7,9)
牐 end sub
牐 此過程的功能是把數組b中的5個數逆序存放(即排列為9,7,5,3,1)。為實現此功
牐 能,省略號處的程式段應該是
牐 a)for i=0 to 5-1\2
牐 tmp=b(i)
牐 b(i)=b(5-i-1)
牐 b(5-i-1)=tmp
牐 next
牐 b)for i=0 to 5
牐 tmp=b(i)
牐 b(i)=b(5-i-1)
牐 b(5-i-1)=tmp
牐 next
牐 c) for i=0 t0 5\2
牐 tmp=b(i)
牐 b(i)=b(5-i-1)
牐 b(5-i-1);tmp
牐 next
牐 d)for i=1 t0 5\2
牐 tmp=b(i)
牐 b(i)=b(5一i一1)
牐 b(5—i—1)=tmp
牐 next
(27)在窗體上畫一個名稱為drivel的驅動器列表框,一個名稱為dirl的目錄列表框,
牐 一個名稱為filel的檔案列表框,兩個名稱分別為labell、label2,標題分別為空白
牐 和“共有檔案”的標籤。編寫程式,使得驅動器列表框與目錄列表框、目錄列表框
牐 與檔案列表框同步變化,並且在標籤labell中顯示當前資料夾中檔案的數量。如圖
牐 所示。
牐 能夠正確實現上述功能的程式是
牐 a) private sub dirl_change() b)private sub dir1_change()
牐 filel.path=dir1.path filel.path=dir1.path
牐 end sub end sub
牐 private sub drivel_change()private sub drive1_change()
牐 dirl.path=drivel.drive dirl.path=drivel.drive
牐 labell.caption=filel.listcount labell.captlon=file1.list
牐 end sub end sub
牐 c)private sub dirl_change() d) private sub dirl_change()
牐 filel.path=dirl.path filel.path=dir1.path
牐 labell.caption=filel.listcount labell.caption=filel.list
牐 end sub end sub
牐 private sub drivel_change() private sub drivel_change()
牐 dirl.path=drivel.drlvedir1.path=drivel.drlve
牐 labell.caption=filel.listcount labell.caption=filel.list
牐 end subend sub
(28)一個工程中包含兩個名稱分別為forml、form2的窗體,一個名稱為mdlfunc的標準
牐 模組。假定在forml、form2和mdlfunc中分別建立了自定義過程,其定義格式為:
牐 forml中定義的過程:
牐 private sub frmfunctionl()
牐 end sub
牐 form2中定義的過程:
牐 public sub frmffunction2()
牐 end sub
牐 mdlfunc中定義的過程:
牐 public sub mdlfunction()
牐 end sub
牐 在調用上述過程的程式中,如果不指明窗體或模組的名稱,則以下敘述中正確的是
牐 a)上述三個過程都可以在工程中的任何窗體或模組中被調用
牐 b)frmfunction2和mdlfunction過程能夠在工程中各個窗體或模組中被調用
牐 c)上述三個過程都只能在各自被定義的模組中調用
牐 d)只有mdlfunction過程能夠被工程中各個窗體或模組調用
(29)窗體上有兩個名稱分別為textl、text2的文本框,一個名稱為commandl的命令
牐 按鈕。運行後的窗體外觀如圖所示。
牐 設有如下的類型聲明
牐 type person
牐 name as string*8
牐 major as string*20
牐 end type
牐 當單擊“保存”按鈕時,將兩個文本框中的內容寫入一個隨機檔案test29.dat中。設
牐 文本框中的數據已正確地賦值給person類型的變數p。則能夠正確地把數據寫入檔案
牐 的程式段是
牐 a)0pen”c:\test29.dat" for random as#1
牐 put #1,1,p
牐 close #1
牐 b)open "c:\test29.dat" for random as #1
牐 get#1,1,p
牐 c10se #1
牐 c)open "c\test29.dat" for random as #1 len=len(p)
牐 put #1,1,p
牐 close #1
牐 d)open "c:\test29.dat " for random as #1=len(p)
牐 get #1,1,p
牐 close #1
(30)在窗體上畫一個名稱為commondialogl的通用對話框,一個名稱為commandl的
牐 命令按鈕。要求單擊命令按鈕時,打開一個保存檔案的通用對話框。該視窗的標題
牐 為"save",預設檔案名稱為“savefile”,在“檔案類型”欄中顯示*.txt。則能夠滿足
牐 上述要求的程式是
牐 a)private sub command_c1ick()
牐 commondialogl.filename=“savefile”
牐 commondialogl.filter="all files|*.*|(*.txt)|*.txt|(*.doc).|*.doc"
牐 commondialogl.filterindex=2
牐 commondialogl.dial0g.title="save"
牐 commondialogl.action=2
牐 end sub
牐 b)private sub commandl_click()
牐 commondialogl.filename="savefile"
牐 commondialogl.filter="a11 files|*.*|(*.txt)|*.txt|*.doc|*.doc"
牐 c0mmondialogl.filterindex=1
牐 commondialogl.dialogtitle="save"
牐 commondialogl.action=2
牐 end sub
牐 c)private sub cmmandl_c1ick()
牐 commondialogl.filename="save"
牐 commondialogl.filter="a11files|*.*|(*.txt)|*.txt|(*.doc)|*.doc"
牐 commondialogl.filterindex=2
牐 c0mmondialogl.dialogtitle="savefile"
牐 commondialogl.action=2
牐 end sub
牐 d)private sub commandl_c1ick()
牐 commondialogl.filename="savefile"
牐 commondialogl.filter="all files|*.*|(*.txt)|*.txt|(*.doc)|*.doc"
牐 commondialogl.filterindex=1
牐 commondialogl.dialogtitle=“save”
牐 commondialogl.action=1
牐 end sub
二、填空題(每空2分,共30分)
牐 請將每空的正確答案寫在答題卡[1]一[15序號的橫線上,答在試卷上不得分。
牐 (1)visual basic中有一種控制項組合了文本框和列表框的特性,這種控制項是________
(2)visual basic提供的對數據檔案的三種訪問方式為隨機訪問方式_____和二進制訪問
牐 方式。
(3)執行下面的程式段後,變數s的值為_______。
牐 s=5
牐 for i =2.6 to 4.9 step 0.6
牐 s=s十1
牐 next i
(4)為了在運行時把d:\pic資料夾下的圖形檔案a.jpg裝入圖片框picturel,所使用的語
牐 句為_______。
(5)計時器控制項能有規律的以一定時間間隔觸發_______事件,並執行該事件過程中的
牐 程式代碼。
(6)以下程式的功能是:生成20個200到300之間的隨機整數,輸出其中能被5整除的
牐 數並求出它們的和。請填空。
牐 private sub commandl_c1ick()
牐 fori=1to 20
牐 x=int(____________*200+100)
牐 if_______[7] =0 then
牐 print x
牐 s=s+_________ [8]
end if
牐 next i
牐 print “sum=”:s
牐 end sub
(7)設有如下程式
牐 private sub form_click()
牐 dim a as integer,b as integer
牐 a=20:b=50
牐 pla,b
牐 p2a,b
牐 p3a,b
牐 print"a=";a,"b=";b
牐 end sub
牐 sub pl(x as integer,byval y as integer)
牐 x=x+10
牐 v=v+20
牐 end sub
牐 sub p2(byval x as integer, y as integer)
牐 x=x+10
牐 y=y+20
牐 end sub
牐 sub p3(byvalx as integer, byval y as integer)
牐 x=x+10
牐 y=y+20
牐 end sub
牐 該程式運行後,單擊窗體,則在窗體上顯示的內容是:a=______和b=______。
(8)在窗體上畫一個名稱為commandl的命令按鈕,編寫如下事件過程
牐 private sub commandl_c1ick()
牐 dim as string
牐 a=_____[11]
牐 for i =1 to 5
牐 print space(6—i);mid$3(a,6—i,2*i—1)
牐 nexti
牐 end sub
牐 程式運行後,單擊命令按鈕,要求窗體上顯示的輸出結果為
牐 456
牐 34567
牐 2345678
牐 123456789
牐 請填空。
(9)在窗體上畫一個名稱為combo1的組合框,畫兩個名稱分別label1和label2及caption
牐 屬性分別為“城市名稱”和空白的標籤。程式運行後,當在組合框中輸入一個新項
牐 後按回車鍵(ascii碼為13)時,如果輸入的項在組合框的列表中不存在,則自動
牐 添加到組合框的列表中,並在label2中給出提示“已成功添加輸入項”如圖所示;
牐 如果存在,則在label2中給出提示“輸入項已在組合框中”。請在[12]、[13]和
牐 [14]處將程式補充完整。
牐 private sub combol_________<12> (keyascii as integer)
牐 1f keyascii=13 then
牐 fori=0 to combo1.listcount—1
牐 1f combo1.text=______ [13] ihen
牐 label2.caption=”輸入項己在組合框中”
牐 exit sub
牐 end lf
牐 next i
牐 label2.caption=“已成功添加輸入項”
牐 combo1.______ [14] combo1.text
牐 end lf
牐 end sub
(10)設有如下程式
牐 private sub search(a()as variant,byval key as variant,index%)
牐 dim i%
牐 fori=lbound(a)to ubound(a)
牐 if key=a(i) then
牐 index=i
牐 exit sub
牐 end if
牐 next i
牐 index=-1
牐 end sub
牐 private sub form_load()
牐 show
牐 dtm b() as variant
牐 dim n as integer
牐 b=array(1,3,5,7,9,11,13,15)
牐 call search(b,11,n)
牐 printt n
牐 end sub
牐 程式運行後,輸出結果是________。