




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
69/69《VisualBasic程序設(shè)計》形成性考核冊作業(yè)及答案
2012年《VisualBasic程序設(shè)計》形成性考核冊作業(yè)及答案作業(yè)1
一、選擇題
1、在設(shè)計應(yīng)用程序時,可以查看到應(yīng)用程序工程所有組成部分的窗口是(D)。
A、窗體設(shè)計
B、代碼
C、屬性
D、工程資源管理器窗口
2、窗體的load事件的觸發(fā)時機(jī)是(B)。
A、用戶單擊窗體時
B、窗體被加載時
C、窗體顯示之后
D、窗體卸載時
3、與傳統(tǒng)的程序設(shè)計語言相比,VisualBasic最突出的特點是(C)。
A、結(jié)構(gòu)化程序設(shè)計
B、程序開發(fā)環(huán)境
C、事件驅(qū)動編程機(jī)制
D、程序調(diào)試技術(shù)
4、VB6.0集成開發(fā)環(huán)境的主窗口中不包括(C)。
A、標(biāo)題欄
B、菜單欄
C、狀態(tài)欄
D、工具欄
5、如果對象的名稱為Mytext,而且對象有一個屬性Text,那么在代碼中引用該屬性的正確格式是(B)。
A、text.Mytext
B、Mytext.Text
C、Mytext.(Text)
D、Mytext*Text
6、下列可以激活屬性窗口的操作是(D)。
A、用鼠標(biāo)雙擊窗體的任何部位
B、執(zhí)行“工程“菜單中的”屬性窗口“命令
C、按Ctrl+F4
D、按F4
7、假定已在窗體上畫了多個控件,并有一個控件是活動的,為了在屬性窗口中設(shè)置窗體的屬性,預(yù)先應(yīng)執(zhí)行的操作是(A)。
A、單擊窗體上沒有控件的地方
B、單擊任一個控件
C、不執(zhí)行任何操作
D、雙擊窗體的標(biāo)題欄
8、如果要在文本框鍵入字符時,只顯示某個字符,如果(*),應(yīng)設(shè)置文本框的(B)屬性。
A、Caption
B、PasswordChar
C、Text
D、Char
9、如果想要在文本框中的內(nèi)容在運(yùn)行時不能編輯,需要文本框的(A)屬性設(shè)置為True.
ALocked
B、MultiLine
C、TabStop
DVisible
10對于定時器(Tiner)控制,設(shè)置其定時是否開啟的屬性是(C)
A、Index
B、Tag
C、Enabled
D、Left
11、要在窗口體Fornl內(nèi)顯示“myfrm”使用的語句是(C)
A、Form.caption=“myfrm”B、Fornl.caption=“myfrm”
C、forml.print“myfrm”D、form.print“myfrm”
12、對象的性質(zhì)和狀態(tài)特征稱為(C)
A、事件
B、方法
C、屬性
D、類
13、下列正確的賦值語句是(B)
A、x+y=20
B、y=x+20
C、3x=y
D、s=
14、當(dāng)使用上下文相關(guān)的幫助時,選擇要幫助的內(nèi)容,然后按(D)鍵,就可出現(xiàn)MSDN窗口直接顯示所需的幫助信息。
A、Help
B、F10
C、Ese
D、F1
15、將調(diào)試通過的工程經(jīng)“文件”菜單的“生成.exe文件“編繹成名.exe后,將該可執(zhí)行文件放到其它機(jī)器上不能運(yùn)行的主要原因是(D)。
A、運(yùn)行的機(jī)器上無VB系統(tǒng)
B、缺少.frm窗體文件
C、該執(zhí)行文件有病毒
D、以上原因都不對
二、填空題
1、當(dāng)進(jìn)入VB集成開發(fā)環(huán)境后,發(fā)現(xiàn)沒有顯示“工具箱”窗口。應(yīng)選擇視圖菜單的
工具箱選項,使“工具箱”窗口顯示。
2、在VB中,事件過程名由對象名和
事件名
構(gòu)成。
3、工程文件的擴(kuò)展名是
vbp,窗體文件擴(kuò)展名是
frm
。
4、對象時代碼和數(shù)據(jù)的集合,例如,VisualBasic中的
窗體、
按鈕、
文本框
等都是對象。
5、對象的方法用于
實施某種操作功能
。當(dāng)方法不需要任何參數(shù)并且也沒有返回值,調(diào)用對象的方法的格式為
對象名.方法名
。例如對窗體Forml使用Show方法,應(yīng)寫成
form1.show
。
6、要使文本框顯示滾動條,需要將其ScrollBars
屬性設(shè)置為
3
。
7、欲設(shè)置定時的時間間隔為4秒,則屬性Interval的值為
4000。
8、要使標(biāo)簽框的大小隨Caption屬性做自動調(diào)整,應(yīng)將AutoSize
屬性設(shè)置為
True
。
9、通過
窗體布局窗口
可以在設(shè)計時直觀地調(diào)整窗體在屏幕的位置。
10、要想在代碼中給名為txtshow的文框賦予文本:GOODWORK!時,應(yīng)當(dāng)編寫的語句是
txtshow.text=”GOODWORK!”
。
11、若命令按鈕的名稱為Cmdopen,程序要求單擊以上命令按鈕,打開一個窗口frml,請對以下事件過程填空。
PrivateSubCmdopen
click()
Frm1.show
EndSud
12、事件就是對象上所發(fā)生的事情,VisualBasic中的事件如單擊
、
裝入
、
鼠標(biāo)移動等。一個對象響應(yīng)的事件可以有
多個,用戶不能建立新的事件。事件過程是指
響應(yīng)某個事件后所執(zhí)行的代碼
。假設(shè)某一事件過程如下:
PrivateSubcmd1_Click()
Form1.Caption=”VB示例”
EndSub
則響應(yīng)過程的對象名是
cmd1
,事件名是
Click
。
13、對象的方法用于在對象上實施某種操作功能
。當(dāng)方法不需要任何參數(shù)并且也沒有返回值,調(diào)用對象的方法格式為
對象名.方法名
,例如,對窗體Form1使用Show方法,應(yīng)寫成
Form1.Show
。
14、為了在編寫代碼時能自動語法檢查,必須執(zhí)行工具
菜單中的
選項
命令,打開
選項
對話框,然后選擇“編輯器”選項卡中的自動語法檢測。
15、定時器(Timer)控件可識別的事件是Timer,了生該事件的時間間隔定時由定時器的
Interval屬性設(shè)置,其單位為毫秒。
三、問答題
1、什么是可視化編程和事件驅(qū)動?
答:可視化編程是指無須編程,僅通過直觀的操作方式即可完成界面的設(shè)計工作的這種編程方式。
當(dāng)VB的應(yīng)用程序運(yùn)行后,系統(tǒng)處于等待狀態(tài),當(dāng)某個事件發(fā)生后,程序就去執(zhí)行此事件的事件過程,當(dāng)這個事件過程執(zhí)行完后,系統(tǒng)又處于等待另一個事件發(fā)生的狀態(tài),這就是事件驅(qū)動程序方式。
2、對象、屬性、事件和文件之間的關(guān)系如何?
答:對象是代碼和數(shù)據(jù)的封裝體。對象的操作通過與該對象有關(guān)的屬性、事件、方法來描述。
屬性是一個對象的基本特性,每個對象都有它自己的屬性。
方法是對象要執(zhí)行的動作。
事件是在對象上所發(fā)生的事情。
3、簡述事件驅(qū)動機(jī)制與傳統(tǒng)編程方式的不同。
答:傳統(tǒng)的面向過程的應(yīng)用程序中,應(yīng)用程序自身控制了執(zhí)行那一部分代碼按何種順序執(zhí)行代碼,程序從第一行代碼開始執(zhí)行并按應(yīng)用程序中預(yù)定的路徑執(zhí)行,用戶無法改變程序的執(zhí)行流程。而事件驅(qū)動機(jī)制則由用戶來決定執(zhí)行的路線。這就是兩者的不同。
4、簡述事件驅(qū)動的工作過程。
答:事件驅(qū)動的工作過程如下:(1)啟動應(yīng)用程序,裝載和顯示窗體。(2)窗體或窗體上的控件等待事件的發(fā)生。(3)當(dāng)某個事件發(fā)生后,執(zhí)行其對應(yīng)的事件過程代碼。(4)重復(fù)執(zhí)行(2)和(3),直到遇到END語句或單擊“結(jié)束”按鈕停止程序的運(yùn)行。
四、程序設(shè)計題
1、在窗體上添加一個文本框和兩個命令按鈕,并把兩個命令按鈕的標(biāo)題分別設(shè)置為“隱藏文本框”和“顯示文本框”。當(dāng)單擊第一個命令按鈕時,文本框消失;而當(dāng)單擊第二個命令按鈕時,文本框重新出現(xiàn),并在文本框中顯示“VB程序設(shè)計”(字體大小為16)。程序運(yùn)行界面如圖所示。
圖1
解:“隱藏文本框”按鈕中的代碼為:Text1.Visible=False
“顯示文本框”按鈕中的代碼為:Text1.Visible=True
Text1.Text=”VB程序設(shè)計”
Text1.FontSize=”16”
2、設(shè)計一個計算程序。該程序用戶界面如圖2所示,由四個文本框:文本框1(text1)、文本框2(text2)、文本框3(text3)、文本框4(text4),和三個按鈕:命令按鈕1(command1)、命令按鈕2(command2)、命令按鈕3(command3)組成。程序運(yùn)行后,用戶按清除按鈕,則清除文本框中顯示的內(nèi)容,按計算按鈕,則計算三科平均成績。單擊退出按鈕則退出。
解:command1中的代碼為:text1=””:text2=””:text3=””:text4=””
command2中的代碼為:text4=(val(Text1)+val(Text2)+val(Text3))/3
command2中的代碼為:End
3、編寫一收款計算程序。要求用戶輸入商品的“單價”、“數(shù)量”和“折扣”后,單擊“計算”按鈕顯示“應(yīng)付款”,單擊“清除”按鈕,清除文本框中所有的數(shù)據(jù)。程序運(yùn)行界面如圖3所示。
答:“計算”按鈕的代碼:text4=val(Text1)*val(Text2)*val(Text3)/100
“清除”按鈕的代碼:text1=””:text2=””:text3=””:text4=””
作業(yè)2
一、選擇題
1.按照變量的作用域可將變量劃分為(B
)。
A、公有、私有、系統(tǒng)
B、全局變量、模塊級變量、過程變量
C、動態(tài)、常數(shù)、靜態(tài)
D、Public、Private、Protected
2.可獲得字符的ASCII碼的函數(shù)是(C)。
A、ValB、FixC、Asc
D、Chr
3、要退出Do….Loop循環(huán),可使用的語句的(D)語句。
A、Exit
B、Exit
For
C、EndDo
D、ExitDo
4.把數(shù)值型轉(zhuǎn)換為字符串型需要使用的函數(shù)是(B)。
A、Val
B、Str
C、Asc
D、Chr
5.關(guān)于語句行,下列說法正確的是(B)。
A.一行只能寫一條語句B.一條語句可以分多行書寫
C.每行的首字符必須大寫D.長度不能超過255個字符
6.表達(dá)式6+10Mod4*2+1的值是(A).
A.9B.11C.1D.3
7.以下可以作為VisualBasic變量名的是(B).
A.SIN
B.CO1
C.COS(X)
D.X(-1)
8.表達(dá)式Abs(-5)+Len(“ABCDE”)的值為(C).
A.5ABCDEB.-5ABCDE
C.10
D.0
9.在代碼編輯器中,如果一條語句太長,無法在一行內(nèi)寫下(不包括注釋),要折行書寫,可以在行末使用續(xù)行字符(A),表示下一行是當(dāng)前行的繼續(xù).
A.一個空格加一個下劃字符(_)B.一個下劃字符(_)
C.直接回車
D.一個空格加一個字符(-)
10.Sub過程與Function過程最根本的區(qū)別是(D).
A.Sub過程可以使用Call語句或直接使用過程名調(diào)用,而Function過程不可以.
B.Function過程可以有參數(shù),Sub過程不可以.
C.兩種過程參數(shù)的傳遞方式不同.
D.Sub過程的過程名不能返回值,而Function過程能夠通過過程名返回值.
11."X是小于80的非負(fù)數(shù)",用VB表達(dá)式表示正確的是(C).
A..0≤X<80
B.0<=X<80
C.0<=xandx<80
D.0<=xOrx<80
12.在設(shè)計菜單時,如果要在菜單中加入一個菜單分隔條,則菜單分隔條的標(biāo)題必須設(shè)置為(B)
A.加號(+)
B.減號(-)
C.星號(*)
D.感嘆號(!)
13.如果要在程序中顯示一個彈出式菜單,那么要調(diào)用VisualBasic中提供的方法是(D).
A.Print
B.Move
C.Refresh
D.PopupMenu
14.下列可以用來存儲圖像供其他對象使用的控件是(C).
A.ToolBar
B.StatursBar
C.ImageList
D.TreeView
15.當(dāng)單擊工具攔上的按扭時,會觸發(fā)的事件是(A).
A.ButtonClick
B.Change
C.Load
D.KeyPress
16.要利用公用對話框控件來顯示”打開文件”對話框,需要調(diào)用控件的(B)方法.
A.ShowPrinter
B.ShowOpen
C.ShowSave
D.ShowColor
17.對于窗體級變量,下列說法中錯誤的是(C).
A.所在窗體的各子程序都可以訪問
B.其他窗體的子程序不能訪問
C.所在窗體發(fā)子程序不能訪問用Private定義的窗體級變量
D.一定要在所在窗體的通用區(qū)內(nèi)定義
18.從一個字符串中的第3個字符開始,獲取5個字符,應(yīng)使用(B)
A.Len函數(shù)
B.Mid函數(shù)
C.Left函數(shù)
D.Right函數(shù)
19.用下面的語句所定義的數(shù)組的元素的個數(shù)是(D).
DimA(-3To5)As
Integer
A.6
B.7
C.8
D.9
20.有如下程序段:
DimstrlAsString*5
Strl=”VisualBasic”
當(dāng)該段程序被執(zhí)行完時,變量strl的值為(B).
A.”Visual”
B.”Visua”
C.”V”
D.”Visual
Basic”
二、填空題
1.菜單一般有_下拉式_和_彈出式__兩種基本類型。
2.通用對話框控件可顯示的常用對話框有__打開_、_保存_、__顏色_、__字體_、__打印_。
3.組合框具有__文本框_和__列表框_兩種控件的基本功能。
4.要使數(shù)組的默認(rèn)下標(biāo)從“1開始,則應(yīng)在窗體或標(biāo)準(zhǔn)模塊代碼的聲明部分使用語句__OptionBase1_。
5.調(diào)用Sub過程時,使用__call__語句,語句用于把程序控制傳送到一個VisualBasic的Sub過程。
6.若已建立了Form1和Form2兩個窗體,默認(rèn)啟動窗體為Form1。通過_工程_菜單__屬性_命令的_通用_選項卡,可將啟動窗體設(shè)置為Form2。在程序中若要顯示Form1窗體,則執(zhí)行_Form1.show_語句。
7.列表框中項目的序號是從_0_開始的。
8.Sub過程與Function過程最根本的區(qū)別是_Sub過程名無返回值,F(xiàn)unction過程名有返回值。
9.VB的代碼存儲在模塊中。在VB中提供了三種類型的模塊:_類模塊_、_窗體模塊__和_標(biāo)準(zhǔn)模塊_。
10.使用Hide方法會隱藏被調(diào)用的窗體,但是在調(diào)用Hide方法之后不會把窗體__卸載_,被調(diào)用的窗體中的屬性等已處于_內(nèi)存中_。
11.將下列數(shù)學(xué)式子寫成VisualBasic表達(dá)式。
⑴
答:2*cos(a)*sin(a)/(2*a)
⑵答:sqr(s*(s-a)*(s-b)*(s-c))
⑶sin45°:sin(45*2*3.1415/360)_
12.將下列數(shù)學(xué)式子各條件寫成VisualBasic邏輯表達(dá)式。
⑴1≤x<12:1<=xandx<12
⑵A+B≥C或a-c≤c:(A+B)>=COR(a-c)<=c
⑶a和b都為正整數(shù)或同為負(fù)數(shù):(a>=0andb>=0)or(a<=0andb<=0)
13.設(shè)A=2,B=3,C=4,D=5。表達(dá)式NotA<=COr4*B^2AndB<>A+C的值為_False_。
14.在VisualBasic語言中有三種形式的循環(huán)結(jié)構(gòu)。其中,若循環(huán)的次數(shù)可以事先確定,可使用_For…next__循環(huán);若要求先判斷循環(huán)進(jìn)行的條件,可使用_Dowhile…loop_循環(huán)或_while…Wend_循環(huán)。
15.以下語句的輸出結(jié)果是__3_。
a%=3.14159
Printa%
三、閱讀下列程序,寫出程序運(yùn)行結(jié)果。
1、PrivateSubForm_Click()
StaticSumAsInteger
ForI=1to100
Sum=Sum+I
NextI
PrintSum
EndSub
程序運(yùn)行結(jié)果為:1+2+…….+99+100=5050
2、privateSubForm_Click()
A=10:b=15:c=20:d=25
PrintA;Spc(5);b;Spc(7);c
PrintA;Spc(8);b;Space$(5);c
Printc;Spc(3);”+”;Spc(3);c+d
EndSub
10(5個空格)15(7個空格)20
10(8個空格)15(5個空格)20
20(三個空格)+(三個空格)45
3、PrivateSubForm_click()
Fori%=1to3
Forj%=1toi
PrintLTrim(Str(i%))+“*”+LTrim(Str(j%))+“=”;i%*j%;
Nextj%
Nexti%
EndSub
1*1=1
2*1=2
2*2=4
3*1=3
3*2=6
3*3=9
4、PrivateSubCommand1_Click()
Dima,bAsInteger
A=3.4
B=3.4
Text1.Text=a
Text2.Text=b
EndSub
Text1顯示3、4
Text2顯示3
5、PrivateSubForm_Click()
ForI=1to5
PrintTab(11–I)
ForJ=1ToI*2–1
Print“*”;
Next
Nexti
EndSub
*
***
*****
*******
*********
四、程序設(shè)計題
1、購物優(yōu)惠程序。某商場為了加速促成商品流通,采用購物打折的優(yōu)惠辦法,每位顧客一次購物(1)在100元以上者,按九五折優(yōu)惠;(2)在200元以上者,按九折優(yōu)惠;(3)300元以上者,按八折優(yōu)惠;(4)500元以上者按七折優(yōu)惠。在窗體上添加兩個文本框和一個命令按鈕,要求在Text1中輸入購物商品總金額,單擊命令按鈕,在Text2中輸入優(yōu)惠后的價格。程序運(yùn)行結(jié)果如圖解所示。
IfVal(text1)>=500thentext2=Val(text1)*0.7
ElseifVal(text1)>=300thentext2=Val(text1)*0.85
ElseifVal(text1)>=200thentext2=val(text1)*0.9
Elseifval(text1)>=100thentext2=val(text1)*0.95
Endif
2、輸出100~200之間不能被3整除的的數(shù),要求用Do語句的一種形式來實現(xiàn),程序運(yùn)行結(jié)果如圖5所示。
窗體的裝入事件中加入如下代碼:
Dimaasinteger
A=100
Dowhilea<=200
If(amod3)<>0then
List1.additenstr(a)
Endif
A=a+1
loop
3、編寫程序,打印如下的乘積表:
DimI,jasinteger
Print”*”:space(5):
Fori=3to12step3
Printstr(i);space(5);
Nexti
ForI=15to18
Printstr(i);space(3);
Forj=3to12step3
Printstr(i*j);space(4);
Nextj
Nextj
4、設(shè)計一個計算程序。該程序用戶界面如圖7所示。要求程序運(yùn)行后,用戶選中單擊選按鈕,則程序作10和2的相應(yīng)計算,并把計算結(jié)果在文本框中顯示出來。如用戶選中加法單選按鈕,則程序作10和2的相加,計算結(jié)果12在文本框中顯示出來。按結(jié)束,則退出。
乘法單選按鈕的單擊事件中添加如下代碼:
Text1=10*2
除法單選按鈕中添加如下代碼:
Text1=10/2
加法單選按鈕中添加如下代碼:
Text1=10+2
減法單選按鈕中添加如下代碼:text1=10-2
結(jié)束按鈕中代碼:end或unloadme
5、編寫輸入一個0~6數(shù)字,顯示漢字對照輸出星期的Function過程。程序運(yùn)行結(jié)果如圖8所示。
文本框的change事件中代碼如下:
Selectcaseval(text1)
Case0
Label1.caption=”星期天”+chr(13)+”(Sunday)”
Case1
Label1.caption=”星期一”+chr(13)+”(monday)”
Case2
Label1.caption=”星期二”+chr(13)+”(Tuesday)”
Case3
Label1.caption=”星期三”+chr(13)+”(wednesday)”
Case4
Label1.caption=”星期四”+chr(13)+”(thursday)”
Case5
Label1.caption=”星期五”+chr(13)+”(firday)”
Case6
Label1.caption=”星期六”+chr(13)+”(saturday)”
Endselect
6、編寫一個程序,當(dāng)鼠標(biāo)移到Picturel控件時,鼠標(biāo)指針改變形狀;當(dāng)在Picturel控件上單擊鼠標(biāo)右鍵時,通過消息框顯示“Youpressedrightbutton”,并再次改變鼠標(biāo)指針的形狀。
Picture1_mouseup
Ifbutton=2then
I=1
Msgbox”youpressedrightbutton”
Endif
Endsub
7、列表框應(yīng)用程序。要求從文本框中輸入姓名,然后按“添加”按鈕,把姓名添加到列表框中;當(dāng)選擇列表框中某一項時,按“刪除”按鈕,從列表框中刪除;當(dāng)列表框中某一項時,按“修改”按鈕,把列表框中選取的項送往文本框且“修改”按鈕變?yōu)椤靶薷拇_認(rèn)”。在文本框的內(nèi)容修改好后,按“修改確認(rèn)”按鈕,再把文本框中修改后的信息送到列表框且“修改確認(rèn)”按鈕變?yōu)椤靶薷摹?。程序運(yùn)行結(jié)果如圖9所示。
添加按鈕代碼:list1.additemtext1.text
Text1.text=””
刪除:iflist1.text<>””then
List1.removeitem=list1.listindex
Endif
修改:
Ifcommand3.caption=“修改”then
Text1.text=list1.text
Command3.caption=”修改確認(rèn)”
Else
If
command3.caption=”修改確認(rèn)”then
List1.list=list1.listindex>=text1.text
Command3.caption=”修改”
Endif
Endif
作業(yè)3
一、選擇題
1、VisibleBasic根據(jù)計算機(jī)訪問文件的方式將文件分成三類,其中不包括(B)
A.順序文件
B.Unix文件
C.二進(jìn)制文件
D.隨機(jī)文件
2、隨機(jī)文件進(jìn)行文件讀取的單位是(B)
A.字節(jié)
B。記錄
C。整個文件
D。字符
3、為了使目錄路徑列表框Dir1的內(nèi)容符合驅(qū)動器列表框Drive1的選擇,應(yīng)當(dāng)(B)。
A.在Dir1_Click事件中加入Dir1.Path=Drive1.Drive
B.在Drive1_Click事件中加入Dir1.Path=Drive1.Drive
C.在Dir1_Click事件中加入Drive1.Path=Dir1.Drive
D.在Dir1_Click事件中加入Drive1.Path=Dir1.Drive
4、為了使drive1驅(qū)動器列表框、dir1目錄路徑列表框和file1文件列表框能同步協(xié)調(diào)工作,需要在(B)
A.drive1的Change事件過程中加入drive1.Drive=dir1.Path,在dir1的Change事件過程中加入dir1.Path=file1.Path代碼。
B.drive1的Change事件過程中加入dir1.Path=drive1.Drive,在dir1的Change事件過程中加入file1.Path=dir1.Path代碼。
C.dir1的Change事件過程中加入dir1.Path=drive1.Drive,在file1的Click事件過程中加入file1.Path=file1.fileName代碼。
D.dir1的Change事件過程中加入dir1.Path=drive1.Drive,在file1的Click事件過程中加入file1.Path=dir1.Path代碼。
5、下面關(guān)于順序文件的描述正確的是(A)
A.每條記錄的長度必須相同
B.可通過編程對文件中的某條記錄方便地修改
C.?dāng)?shù)據(jù)只能以ASCII碼形式存放在文件中,所以可通過文本編輯軟件顯示
D.文件的組織結(jié)構(gòu)復(fù)雜
6、KILL語句在VB語言中的功能是(C)。
A.清內(nèi)存
B。清病毒
C。刪除磁盤上的文件
D。清屏幕
7、可用來改變坐標(biāo)度量單位的是(D)
A.Drawstyle屬性
B.DrawWidth屬性
C.Scale方法
D.ScaleMode屬性
8、以下的屬性和方法中,可重定義坐標(biāo)系的是(C)
A.Drawstyle屬性
B.DrawWidth屬性
C.Scale
D.
ScaleMode屬性
9、當(dāng)用Line方法畫直線后,當(dāng)前坐標(biāo)在(C)
A.(0,0)
B.直線起點
C.直線終點
D.容器的中心
10、Line(200,200)-Step(500,500)將在窗體(C)畫一直線。
A.(200,200)到(500,500)
B.(200,200)到(300,300)
C.(200,200)到(700,700)
D.(300,300)到(500,500)
11、設(shè)置對象的邊框類型的屬性是(B)。
A.Drawstyle
B.Borderstyle
C.DrawWidth
D.ScaleMode
12、為了清除圖片框Picture1中的圖形,應(yīng)采取的正確方法是(B)
A.選擇圖片框,然后按Del鍵
B.執(zhí)行語句Picture1.picture=LoadPicture(“”)
C.執(zhí)行語句Picture1.picture=“”
D.選擇圖片框,在屬性窗口中選擇Picture屬性條,然后按回車鍵
13、繪制多種形狀的圖形,需要設(shè)置Shape控件的(A)屬性。
A.Shape
B.Borderstyle
C.FillStyle
D.Style
14、繪制多種形狀的直線,需要設(shè)置Line控件的(B)屬性。
A.Shape
B.Borderstyle
C.FillStyle
D.Style
15、如果準(zhǔn)備讀文件,打開順序文件“text.dat”的正確語句是(C)
A.
open“text.dat”forwriteAs#1
B.
open“text.dat”forBinary
As#1
C.
open“text.dat”forInput
As#1
D.
open“text.dat”forRandom
As#1
16、如果準(zhǔn)備向隨機(jī)文件中寫入數(shù)據(jù),正確的語句是(C)
A.Print#1,rec
B.Write
#1,rec
C.Put#1,rec
D.
Get#1,rec
17、下列“CommandDialog1”控件程序代碼,CommandDialog1.Action=1,代表(B)
A.文件另存為
B.打開文件
C.色彩
D.打印
18、FileFilter.Pattern=”*.bat”程序代碼執(zhí)行后,會顯示(A)。
A只包含擴(kuò)展文件名為”*.bat”的文件
B。第一個bat文件
C.包含所有的文件
D。會顯示磁盤的路徑
19、下列數(shù)據(jù)對象模型中采用OLEDB訪問數(shù)據(jù)庫的是(C)。
A.DAO
B.RDO
C.ADO
D.RDO和ADO
20.設(shè)ADOrs為Recordset對象,從“學(xué)生基本情況表”中獲取所有記錄的語句是(B)
A.ADOrs.New“Select*From學(xué)生基本情況表”
B.ADOrs.Open“Select*From學(xué)生基本情況表”
C.ADOrs.Execute“Select*From學(xué)生基本情況表”
D.ADOrs.Select“Select*From學(xué)生基本情況表”
21、VB中將變量xl聲明為Excel應(yīng)用程序?qū)ο蟮姆椒ㄊ牵ˋ)
A.DimxlAsExcel.Application
B.DimxlAsExcel.Workbook
C.
DimxlAsExcel.Worksheet
D.DimxlAsExcel.Worksheets
二、填空題
1、如果要新建一個順序文件,用Open語句時,操作方式關(guān)鍵詞是output。
2.在VisualBasic程序中實現(xiàn)復(fù)制文件“C:\”到D:盤根目錄下的語句
為filecopy
“c:\”,”d:\”。
3.在VisualBasic程序中實現(xiàn)刪除文件”D:\tem.tmp”的語句為__kill”d:\tem.tmp”。
4.按文件號為1打開順序文件SEQNEW.DAT,用于寫入數(shù)據(jù),語句
為___open”SEQNEW.DAT”foroutputas
#1。
5.按文件號為2打開順序文件SEQOLD.DAT,用于從該文件讀出數(shù)據(jù),語句為___open”SEQOLD.DAT”forinputas#2。
6.若窗體的左上角坐標(biāo)為(-200,250),右下角坐標(biāo)為(300,-150),則X軸的正向向右,Y軸的正向向上_。
7.Stretch屬性設(shè)置為_false_時,圖像框可自動改變大小以適應(yīng)其中的圖形.
8.在圖片框Picture1中畫一個左上角在(500,500),邊長為500的紅色實心正方形的語句為_picture1.line(500,500)-step(500,500),vbred,BF。
9.設(shè)
CurrentX=50,CurrentY=100,執(zhí)行指令”line(100,20)-Step(300,500)”后,Current=_(400,520)_.
10.使用ADO模型時,可通過_ActiveConnect_屬性建立Recordset和Connection對象的連接.
11.VB中將數(shù)據(jù)庫分為本地數(shù)據(jù)庫、遠(yuǎn)程數(shù)據(jù)庫和__外部數(shù)據(jù)庫_三種類型.
12.采用ADO模型時,當(dāng)使用Open方法打開一個記錄集后,與ADOrs.Fields(“學(xué)號”)等效的語句是_ADOrs(“符號”)_.
13.ADO模型中一般可通過Connection對象的Execute方法執(zhí)行__增加_、__刪除_、__修改__等三類不返回結(jié)果集的SQL語句.
14.設(shè)StrSQL、Str1為字符串變量,其中Str1的值為”001”,那么執(zhí)行賦值語句StrSQL=”Select*fromTabel1Where學(xué)號=’”+Str1+”’”后,StrSQL的值等于_”select.*fromtabel1where學(xué)號=’001’”_.
15.在VB中,將Foxpro稱為外部數(shù)據(jù)庫,Access稱為__本地數(shù)據(jù)庫_,SQLServer稱為__遠(yuǎn)程數(shù)據(jù)庫__.
三、程序設(shè)計題
1、在窗體上建立一個驅(qū)動器列表框、目錄列表框、文件列表框、圖片框。要求程序運(yùn)行后,驅(qū)動器列表框Drive1的默認(rèn)驅(qū)動器設(shè)置為C盤,選擇File1中所列的確圖片文件(*.Bmp和*.jpg),則相應(yīng)的圖片顯示在圖片框Picture1中。程序運(yùn)行結(jié)果如圖10所示。
解:依據(jù)圖10設(shè)計界面,文件列表框的pattern屬性設(shè)置為:*.Bmp;*.jpg
驅(qū)動器列表框的change事件中添加如下代碼:
chdrivedrive1.drive
dir1.path=drive1.drive
目錄列表框的change事件中添加如下代碼:
chdirdir1.path
file1.path=dir1.path
文件列表框的click事件中添加如下代碼:
picture1.picture=loadpicturefile1.filename
2.余弦曲線的方程為y=cosx,畫出x從-2到2的確余弦曲線,并在坐標(biāo)軸上標(biāo)出刻度,如圖11所示。
如圖窗體的單擊事件中添加如下代碼:
Form1.scale(-2*3.14159,1)-(2*3.14159,-1)
Form1.line(-2*3.14159,0)-(2*3.14159,0)
Form1.line(0,1)-(0,-1)
Form1.currentx=0.2:form1.currentY=-0.1:print”0”
Form1.currentx=-3.2:form1.currentY=-0.1:print”-pi”
Form1.currentx=3.3:form1.currentY=-0.1:print”pi”
Form1.currentx=-6.2:form1.currentY=-0.1:print”-2pi”
Form1.currentx=5.7:form1.currentY=-0.1:print”2pi”
Form1.currentx=0.2:form1.currentY=0.5:print”0.5”
Form1.currentx=0.2:form1.currentY=-0.5:print”-0.5”
ForI=-6.282to6.282step0.08
Form1.pset(I,cos(I))
NextI
3,使用Line控件顯示直線,并且可以顯示直線的線寬和線型.程序運(yùn)行界面如圖12所示.
如圖添加代碼如下
復(fù)選框的單擊事件代碼:
Ifcheck1.value=1then
Line1.borderwidth=4
Else
Line1.borderwidth=1
Endif
實線、虛線、單選框要弄成一個option1單選框控件數(shù)組。單選框單擊事件代碼:
Selectcaseindex
Case0
Line1.borderstyle=1
Case1
Line1.borderstyle=2
Case2
Line1.borderstyle=3
Endselect
4.使用Shape控件顯示幾種圖形,并可以設(shè)置圖形的邊框和填充效果等.程序運(yùn)行界面如圖13所示.
首先按圖作出程序界面。形狀框架里的單選框要做成option1控件數(shù)組,邊框類型框架里的單選框最成option2控件數(shù)組,填充風(fēng)格框架里的單選做成option3控件數(shù)組。
Option1單擊事件代碼如下:
Selectcaseindex
Case0
Shape1.shape=0
Case1
Shape1.shape=1
Case2
Shape1.shape=3
Case3
Shape1.shape=4
Endselect
Option2單擊事件代碼如下:
Selectcaseindex
Case0
Shape1.borderstyle=0
Case1
Shape1.borderstyle=2
Case2
Shape1.borderstyle=1
Case3
Shape1.borderstyle=3
Case4
Shape1.borderstyle=4
Endselect
Option3單擊事件代碼如下:
Selectcaseindex
Case0
Shape1.fillstyle=1
Case1
Shape1.fillstyle=1
Case2
Shape1.fillstyle=3
Case3
Shape1.fillstyle=6
Endselect
5.使用SQLServer或Access建立名稱為”學(xué)生的數(shù)據(jù)庫,并在其中創(chuàng)建”students”的數(shù)據(jù)庫表,其結(jié)構(gòu)及初始記錄如表1所示.使用ADO對象和MSFlexGrid控件設(shè)計數(shù)據(jù)庫列表顯示程序.程序的設(shè)計界面和運(yùn)行結(jié)果如圖14、圖15所示。
表1
學(xué)號
姓名
專業(yè)
2004001
張紅
軟件專業(yè)
2004003
李強(qiáng)
會計專業(yè)
2004002
王麗
軟件專業(yè)
聲名對象變量ADOcn,用于創(chuàng)建與數(shù)據(jù)庫的連接
PrivateADOcnAsconnection
Readfromtable
Privatesubreadfromtable()
DimstrtmpAsstring
DimADOrsAsnewrecordset
ADOrs.activeconnection=ADOcn
ADOrs.open“select*fromstudentsorderby“學(xué)號”
MSFlexgrid1.clear
MSFlexgrid1.rows=0
MSFlexgrid1.cols=3
Strtmp=“學(xué)號”+vbtab+“姓名”+vbtab+“專業(yè)”
MSFlexgrid1.additemstrtmp
DowhilenotADOrs.eof
Strtmp=ADOrs(“學(xué)號”)+vbtab+ADOrs(“姓名”)+vbtab+ADOrs(“專業(yè)”)
MSFlexgrid1.addttemstrtmp
ADOrsmovenext
Loop
MSFlexgrid1.fixedcols=0
MSFlexgrid1.fixedrows=1
Endsub
Privatesubform_load()
DimstrDBAsstring
strDB=”provider=SQLOLEDB;LSF;UserID=sa;password=;database=學(xué)生”
ifADOcnisnothingthen
setADOcn=newconnection
ADOcn.openstrDB
Endif
Readfromtable
Endsub
Privatesubcommand1_click()
Unloadme
Endsub
作業(yè)4
一、選擇題
1、WinsockServer.LocalPort=10001語句的含義是(
A)。
A、設(shè)置偵聽端口
B、設(shè)置計算機(jī)IP地址
C、設(shè)置中斷地址
D、設(shè)置通訊協(xié)議
2、當(dāng)Winsock控件處于關(guān)閉狀態(tài)時,其State屬性的值是(
B)。
A、1
B、0
C、2
D、6
3、相對于UDP協(xié)議而言,TCP協(xié)議是一種(
A)。
A、面向連接的協(xié)議B、無連接協(xié)議
C、計算機(jī)間不建立連接
D、適用于傳送少量數(shù)據(jù)
4、VB程序中通常不會產(chǎn)生錯誤提示的(D
)。
A、編譯錯誤
B、實時錯誤
C、運(yùn)行時錯誤
D、邏輯錯誤
5、VB程序的編譯錯誤一般可通過VB集成環(huán)境的何種設(shè)置,自動檢測(
B)。
A、要求變量聲明
B、自動語法檢測
C、自動顯示快速信息量
D、根本無法自動檢測
6、VB程序中設(shè)置斷點的按鍵是(
C
)。
A、F5鍵
B、F6鍵
C、F9鍵
D、F10鍵
7、OnErrorGoToErrLB語句中,ErrLB的含義是(
A
)。
A、行標(biāo)識號
B、SUB過程名
C、FUNCTION過程名
D、錯誤號
8、Err對象中,用來表示錯誤描述的屬性是(B
)。
A、ErrNo
B、Description
C、Number
D、Source
二、填空題。
1、使用Winsock控件時,一旦有數(shù)據(jù)到達(dá),將首先觸發(fā)該控件的DataArrival事件。而如果要發(fā)送數(shù)據(jù),則通常使用該控件的senddata方法。
2、Winsock控件主要用來編制或基于TCP/IP經(jīng)UDP協(xié)議的通話程序。
3、ActiveXEX文件的后綴是exe。
4、COM對象有兩種類型接口,即標(biāo)準(zhǔn)接口和用戶接口。
5、如果希望得到本地計算機(jī)的IP地址,可以使用Winsock控件的localIP屬性。
6、Winsock控件的BytesReceived屬性返回接受到的數(shù)據(jù),通常使用getdata方法來獲取這些數(shù)據(jù)了。
7、Winsock1.Listen語句的含義是使服務(wù)程序處于偵聽狀態(tài)等待客戶訪問。
8、常用中的VB網(wǎng)絡(luò)編程控件主要有Winsock、InternetTransfer、WebBrowser三種。
9、VB中的程序錯誤類型主要有編譯錯誤、邏輯錯誤、實時錯誤等三種。
10、VB中用于關(guān)閉錯誤捕獲機(jī)制的語句是onerrorgoto0。
三、問答題。
1、簡述基于Socket的通信過程。
Socket在計算機(jī)提供了一個通信端口,可以通過這個端口與任何一個也同時具有Socket接口的計算機(jī)進(jìn)行通信,應(yīng)用程序在網(wǎng)絡(luò)上傳輸、接收的信息都通過這個Socket接口實現(xiàn),只需要對Socket接口進(jìn)行數(shù)據(jù)的讀寫操作就可以了。
2、簡要設(shè)計錯誤處理程序的3個步驟。
(1)捕捉錯誤,并強(qiáng)制程序跳轉(zhuǎn)
(2)編寫錯誤處理程序,對所有可預(yù)見的錯誤作出反應(yīng)
(3)退出錯誤處理程序
3、簡述常用的程序調(diào)式技巧
(1)事先做好備份
(2)分離受懷疑的程序
(3)縮小搜索范圍
(4)使用MSGBOX語句
4、簡述基于Winsock控件的開發(fā)模式。
(1)服務(wù)器程序的開發(fā)模式
(A)服務(wù)器程序必須設(shè)置好LOCALPORT,作為偵聽端口,該值可設(shè)置成任意一個整數(shù),只要其他應(yīng)用和諧沒有使用過的值均可,但習(xí)慣上應(yīng)大于1000
(B)使用LISTRN方法使用服務(wù)器進(jìn)入偵聽狀態(tài),等待客戶機(jī)程序的連接請求。
(C)客戶機(jī)程序發(fā)出連接請求后,將觸發(fā)服務(wù)器程序的CONNECTIONREQUEST事件,該事件得到一個參數(shù)REQUESTID。
(D)服務(wù)器程序使用ACCEPT方法接受客戶機(jī)程序的REQUESTID請求,至此,服務(wù)器程序就可以使用SRNDDATA方法向客戶機(jī)發(fā)送數(shù)據(jù)了。此時應(yīng)特別注意兩點:一是ACCEPT方法必須用到上一步的REQUESTID作為其參數(shù);二是在執(zhí)行ACCEPT方法前,服務(wù)器仍處于偵聽狀態(tài),此時應(yīng)首先使用CLOSE方法關(guān)閉服務(wù)器,然后再調(diào)用ACCEPT方法。
(E)當(dāng)服務(wù)器程序接收到數(shù)據(jù)時,會產(chǎn)生DATAARRIVAL事件。在該事件中可以使用GETDATA方法接收數(shù)據(jù)。
(2)客戶機(jī)程序的開發(fā)模式
(A)客戶程序首先應(yīng)設(shè)置好REMOTEHOST屬性,用來指向運(yùn)行器程序的主機(jī)名或IP地址
(B)設(shè)置REMOTEPORT屬性,用來指向服務(wù)器程序和偵聽端口號。
(C)使用CONNECT方法向服務(wù)器提出連接請求。
(D)如果服務(wù)器接受上述連接請求,客戶機(jī)程序會產(chǎn)生CONNECT事件。可以根據(jù)需要,在此事件中編寫程序,比如使用MSGBOX函數(shù)向用戶提示“連接已成功”之類的信息。
(E)連接成功之后,就可以根據(jù)需要使用SENDDATA方法向服務(wù)器發(fā)送數(shù)據(jù)了。
(F)當(dāng)客戶機(jī)程序接收到數(shù)據(jù)時,會產(chǎn)生DATAARRIVAL事件,可以用GETDATA方法接收數(shù)據(jù)。
四、程序設(shè)計題。
1、利用冒泡排序算法開發(fā)以下程序,請指出程序中存在的錯誤并改正。
PrivateSubCommand1_Click()
DimA(1To20)AsInteger
Dimc,j,TAsInteger
'此處有錯,應(yīng)為Dimc,j,Tasinteger
‘隨機(jī)生成一組數(shù)據(jù)
Forc=1To20
A(c)=Int(Rnd*100)
Nextc
‘排序
Forc=1To20
Forj=c+1To20
IFA(c)>A(j)Then
T=A(j)
A(j)=A(c)
A(j)=T
'此處有錯,應(yīng)為A(C)=T,實現(xiàn)
EndIf'A(C)和A(J)的交換
Next
Next
‘在窗體上輸出結(jié)果
Cls
Forc=1To20
PrintA(i)'此處有錯,應(yīng)為A(C).下標(biāo)越界.
Nextc
EndSub
2、利用Winsock控件開發(fā)一個點對點聊天系統(tǒng),該系統(tǒng)由一個服務(wù)器應(yīng)用程序和一個客戶端應(yīng)用程序組成,能夠?qū)崿F(xiàn)網(wǎng)絡(luò)中兩臺計算機(jī)間的通話任務(wù)。
解:如下界面的設(shè)計中,若不說明,各對象均采用默認(rèn)的名稱。
服務(wù)器程序的界面設(shè)計
1、創(chuàng)建一個“標(biāo)準(zhǔn)EXE”工程。選中“工程”菜單的“部件”選項,在控件中找到MicrosoftWinsockControl并將其選中。如果沒有找到,通常是由于VB安裝不安全的緣故,可以找到安裝盤并安裝其中的Mswinsck.cad壓縮包。
2、將form1的名稱改為frmSvr,并在其中添加一個命令按鈕控件,將其Caption屬性修改為“退出”。
3、在窗體上添加三個添加TextBox控件,分別將其名稱修改為txtServerIP,txtSend和txtReceive,用來顯示服務(wù)器的IP地址和需收發(fā)的信息。
4、在窗體上添加一個Winsock控件,將其名稱改為WinsockServer,將Protocol(協(xié)議)屬性設(shè)置為0(即sckTCPProtocol)
各控件及事件代碼如下:
PrivateSubCommand1_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
txtreceive.Text=""
txtsend.Text=""
Winsockserver.LocalPort=10001
txtserverip.Text=Winsockserver.LocalIP
Winsockserver.Listen
EndSub
PrivateSubtxtsend_Change()
Winsockserver.SendDatatxtsend.Text
EndSub
PrivateSubWinsockserver_ConnectionRequest(ByValrequestIDAsLong)
Winsockserver.Close
Winsockserver.AcceptrequestID
EndSub
PrivateSubWinsockserver_DataArrival(ByValbytesTotalAsLong)
DimmystrAsString
Winsockserver.GetDatamystr
txtreceive.Text=mystr
EndSub
客戶機(jī)程序的界面設(shè)計
1、與服務(wù)器程序類似,創(chuàng)建一個新的“標(biāo)準(zhǔn)EXE”工程,并添加Winsock控件。
2、將form1的名稱改為frmClt,并添加兩個命令按鈕控件,分別將它們的Caption屬性設(shè)置為“退出”和“連接聊天服務(wù)器”。
3、在窗體添加四個文本框控件,分別將其名修改為txtClientIP,txtSenerIP,txtsend和txtReceive,用來顯示客戶機(jī)和要連接的服務(wù)器的IP地址以及需收發(fā)的信息。
4、在窗體上添加一個Winsock控件,將其名稱改為WinsockClient,將(協(xié)議)屬性設(shè)置為0(即sckTCPProtocol)
各控件及事件代碼如下:
PrivateSubCommand1_Click()
UnloadMe
EndSub
PrivateSubCommand2_Click()
Winsockclient.RemoteHost=txtserverIP.Text
Winsockclient.Connect
EndSub
PrivateSubForm_Load()
txtreceive.Text=""
txtsend.Text=""
Winsockclient.RemotePort=10001
txtclientIP.Text=Winsockclient.LocalIP
EndSub
PrivateSubtxtsend_Change()
Winsockclient.SendDatatxtsend.Text
EndSub
PrivateSubWinsockclient_Connect()
MsgBox"你成功地與聊天室服務(wù)器進(jìn)行了聯(lián)接",vbInformation
EndSub
PrivateSubWinsockclient_DataArrival(ByValbytesTotalAsLong)
DimmystrAsString
Winsockclient.GetDatamystr
txtreceive.Text=mystr
EndSubVisualBasic程序設(shè)計形成性考核冊作業(yè)作業(yè)1
一、選擇題
1、在設(shè)計應(yīng)用程序時,可以查看到應(yīng)用程序工程所有組成部分的窗口是(D)。
A、窗體設(shè)計
B、代碼
C、屬性
D、工程資源管理器窗口
2、窗體的load事件的觸發(fā)時機(jī)是(B)。
A、用戶單擊窗體時
B、窗體被加載時
C、窗體顯示之后
D、窗體卸載時
3、與傳統(tǒng)的程序設(shè)計語言相比,VisualBasic最突出的特點是(C)。
A、結(jié)構(gòu)化程序設(shè)計
B、程序開發(fā)環(huán)境
C、事件驅(qū)動編程機(jī)制
D、程序調(diào)試技術(shù)
4、VB6.0集成開發(fā)環(huán)境的主窗口中不包括(C)。
A、標(biāo)題欄
B、菜單欄
C、狀態(tài)欄
D、工具欄
5、如果對象的名稱為Mytext,而且對象有一個屬性Text,那么在代碼中引用該屬性的正確格式是(B)。
A、text.Mytext
B、Mytext.Text
C、Mytext.(Text)
D、Mytext*Text
6、下列可以激活屬性窗口的操作是(D)。
A、用鼠標(biāo)雙擊窗體的任何部位
B、執(zhí)行“工程“菜單中的”屬性窗口“命令
C、按Ctrl+F4
D、按F4
7、假定已在窗體上畫了多個控件,并有一個控件是活動的,為了在屬性窗口中設(shè)置窗體的屬性,預(yù)先應(yīng)執(zhí)行的操作是(A)。
A、單擊窗體上沒有控件的地方
B、單擊任一個控件
C、不執(zhí)行任何操作
D、雙擊窗體的標(biāo)題欄
8、如果要在文本框鍵入字符時,只顯示某個字符,如果(*),應(yīng)設(shè)置文本框的(B)屬性。
A、Caption
B、PasswordChar
C、Text
D、Char
9、如果想要在文本框中的內(nèi)容在運(yùn)行時不能編輯,需要文本框的(A)屬性設(shè)置為True.
ALocked
B、MultiLine
C、TabStop
DVisible
10對于定時器(Tiner)控制,設(shè)置其定時是否開啟的屬性是(C)
A、Index
B、Tag
C、Enabled
D、Left
11、要在窗口體Fornl內(nèi)顯示“myfrm”使用的語句是(C)
A、Form.caption=“myfrm”B、Fornl.caption=“myfrm”
C、forml.print“myfrm”D、form.print“myfrm”
12、對象的性質(zhì)和狀態(tài)特征稱為(C)
A、事件
B、方法
C、屬性
D、類
13、下列正確的賦值語句是(B)
A、x+y=20
B、y=x+20
C、3x=y
D、s=
14、當(dāng)使用上下文相關(guān)的幫助時,選擇要幫助的內(nèi)容,然后按(D)鍵,就可出現(xiàn)MSDN窗口直接顯示所需的幫助信息。
A、Help
B、F10
C、Ese
D、F1
15、將調(diào)試通過的工程經(jīng)“文件”菜單的“生成.exe文件“編繹成名.exe后,將該可執(zhí)行文件放到其它機(jī)器上不能運(yùn)行的主要原因是(D)。
A、運(yùn)行的機(jī)器上無VB系統(tǒng)
B、缺少.frm窗體文件
C、該執(zhí)行文件有病毒
D、以上原因都不對
二、填空題
1、當(dāng)進(jìn)入VB集成開發(fā)環(huán)境后,發(fā)現(xiàn)沒有顯示“工具箱”窗口。應(yīng)選擇視圖菜單的工具箱選項,使“工具箱”窗口顯示。
2、在VB中,事件過程名由對象名和事件名構(gòu)成。
3、工程文件的擴(kuò)展名是
vbp,窗體文件擴(kuò)展名是
frm
。
4、對象時代碼和數(shù)據(jù)的集合,例如,VisualBasic中的窗體、按鈕、
文本框等都是對象。
5、對象的方法用于實施某種操作功能。當(dāng)方法不需要任何參數(shù)并且也沒有返回值,調(diào)用對象的方法的格式為對象名.方法名。例如對窗體Forml使用Show方法,應(yīng)寫成
form1.show
。
6、要使文本框顯示滾動條,需要將其ScrollBars屬性設(shè)置為
3。
7、欲設(shè)置定時的時間間隔為4秒,則屬性Interval的值為
4000。
8、要使標(biāo)簽框的大小隨Caption屬性做自動調(diào)整,應(yīng)將AutoSize屬性設(shè)置為True。
9、通過窗體布局窗口可以在設(shè)計時直觀地調(diào)整窗體在屏幕的位置。
10、要想在代碼中給名為txtshow的文框賦予文本:GOODWORK!時,應(yīng)當(dāng)編寫的語句是
txtshow.text=”GOODWORK!”。
11、若命令按鈕的名稱為Cmdopen,程序要求單擊以上命令按鈕,打開一個窗口frml,請對以下事件過程填空。
PrivateSubCmdopen
click()
Frm1.show
EndSud
12、事件就是對象上所發(fā)生的事情,VisualBasic中的事件如單擊、裝入、
鼠標(biāo)移動等。一個對象響應(yīng)的事件可以有多個,用戶不能建立新的事件。事件過程是指響應(yīng)某個事件后所執(zhí)行的代碼。假設(shè)某一事件過程如下:
PrivateSubcmd1_Click()
Form1.Caption=”VB示例”
EndSub
則響應(yīng)過程的對象名是
cmd1,事件名是Click
。
13、對象的方法用于在對象上實施某種操作功能。當(dāng)方法不需要任何參數(shù)并且也沒有返回值,調(diào)用對象的方法格式為對象名.方法名,例如,對窗體Form1使用Show方法,應(yīng)寫成
Form1.Show
。
14、為了在編寫代碼時能自動語法檢查,必須執(zhí)行工具菜單中的選項
命令,打開選項對話框,然后選擇“編輯器”選項卡中的自動語法檢測。
15、定時器(Timer)控件可識別的事件是Timer,了生該事件的時間間隔定時由定時器的
Interval屬性設(shè)置,其單位為毫秒。
三、問答題
1、什么是可視化編程和事件驅(qū)動?
答:可視化編程是指無須編程,僅通過直觀的操作方式即可完成界面的設(shè)計工作的這種編程方式。
當(dāng)VB的應(yīng)用程序運(yùn)行后,系統(tǒng)處于等待狀態(tài),當(dāng)某個事件發(fā)生后,程序就去執(zhí)行此事件的事件過程,當(dāng)這個事件過程執(zhí)行完后,系統(tǒng)又處于等待另一個事件發(fā)生的狀態(tài),這就是事件驅(qū)動程序方式。
2、對象、屬性、事件和文件之間的關(guān)系如何?
答:對象是代碼和數(shù)據(jù)的封裝體。對象的操作通過與該對象有關(guān)的屬性、事件、方法來描述。
屬性是一個對象的基本特性,每個對象都有它自己的屬性。
方法是對象要執(zhí)行的動作。
事件是在對象上所發(fā)生的事情。
3、簡述事件驅(qū)動機(jī)制與傳統(tǒng)編程方式的不同。
答:傳統(tǒng)的面向過程的應(yīng)用程序中,應(yīng)用程序自身控制了執(zhí)行那一部分代碼按何種順序執(zhí)行代碼,程序從第一行代碼開始執(zhí)行并按應(yīng)用程序中預(yù)定的路徑執(zhí)行,用戶無法改變程序的執(zhí)行流程。而事件驅(qū)動機(jī)制則由用戶來決定執(zhí)行的路線。這就是兩者的不同。
4、簡述事件驅(qū)動的工作過程。
答:事件驅(qū)動的工作過程如下:(1)啟動應(yīng)用程序,裝載和顯示窗體。(2)窗體或窗體上的控件等待事件的發(fā)生。(3)當(dāng)某個事件發(fā)生后,執(zhí)行其對應(yīng)的事件過程代碼。(4)重復(fù)執(zhí)行(2)和(3),直到遇到END語句或單擊“結(jié)束”按鈕停止程序的運(yùn)行。
四、程序設(shè)計題
1、在窗體上添加一個文本框和兩個命令按鈕,并把兩個命令按鈕的標(biāo)題分別設(shè)置為“隱藏文本框”和“顯示文本框”。當(dāng)單擊第一個命令按鈕時,文本框消失;而當(dāng)單擊第二個命令按鈕時,文本框重新出現(xiàn),并在文本框中顯示“VB程序設(shè)計”(字體大小為16)。程序運(yùn)行界面如圖所示。
圖1
解:“隱藏文本框”按鈕中的代碼為:Text1.Visible=False
“顯示文本框”按鈕中的代碼為:Text1.Visible=True
Text1.Text=”VB程序設(shè)計”
Text1.FontSize=”16”
2、設(shè)計一個計算程序。該程序用戶界面如圖2所示,由四個文本框:文本框1(text1)、文本框2(text2)、文本框3(text3)、文本框4(text4),和三個按鈕:命令按鈕1(command1)、命令按鈕2(command2)、命令按鈕3(command3)組成。程序運(yùn)行后,用戶按清除按鈕,則清除文本框中顯示的內(nèi)容,按計算按鈕,則計算三科平均成績。單擊退出按鈕則退出。
解:command1中的代碼為:text1=””:text2=””:text3=””:text4=””
command2中的代碼為:text4=(val(Text1)+val(Text2)+val(Text3))/3
command2中的代碼為:End
3、編寫一收款計算程序。要求用戶輸入商品的“單價”、“數(shù)量”和“折扣”后,單擊“計算”按鈕顯示“應(yīng)付款”,單擊“清除”按鈕,清除文本框中所有的數(shù)據(jù)。程序運(yùn)行界面如圖3所示。
答:“計算”按鈕的代碼:text4=val(Text1)*val(Text2)*val(Text3)/100
“清除”按鈕的代碼:text1=””:text2=””:text3=””:text4=””
作業(yè)2一、選擇題
1.按照變量的作用域可將變量劃分為(B
)。
A、公有、私有、系統(tǒng)
B、全局變量、模塊級變量、過程變量
C、動態(tài)、常數(shù)、靜態(tài)
D、Public、Private、Protected
2.可獲得字符的ASCII碼的函數(shù)是(C)。
A、ValB、FixC、Asc
D、Chr
3、要退出Do….Loop循環(huán),可使用的語句的(D)語句。
A、Exit
B、Exit
For
C、EndDo
D、ExitDo
4.把數(shù)值型轉(zhuǎn)換為字符串型需要使用的函數(shù)是(B)。
A、Val
B、Str
C、Asc
D、Chr
5.關(guān)于語句行,下列說法正確的是(B)。
A.一行只能寫一條語句B.一條語句可以分多行書寫
C.每行的首字符必須大寫D.長度不能超過255個字符
6.表達(dá)式6+10Mod4*2+1的值是(A).
A.9B.11C.1D.3
7.以下可以作為VisualBasic變量名的是(B).
A.SIN
B.CO1
C.COS(X)
D.X(-1)
8.表達(dá)式Abs(-5)+Len(“ABCDE”)的值為(C).
A.5ABCDEB.-5ABCDE
C.10
D.0
9.在代碼編輯器中,如果一條語句太長,無法在一行內(nèi)寫下(不包括注釋),要折行書寫,可以在行末使用續(xù)行字符(A),表示下一行是當(dāng)前行的繼續(xù).
A.一個空格加一個下劃字符(_)B.一個下劃字符(_)
C.直接回車
D.一個空格加一個字符(-)
10.Sub過程與Function過程最根本的區(qū)別是(D).
A.Sub過程可以使用Call語句或直接使用過程名調(diào)用,而Function過程不可以.
B.Function過程可以有參數(shù),Sub過程不可以.
C.兩種過程參數(shù)的傳遞方式不同.
D.Sub過程的過程名不能返回值,而Function過程能夠通過過程名返回值.
11."X是小于80的非負(fù)數(shù)",用VB表達(dá)式表示正確的是(C).
A..0≤X<80
B.0<=X<80
C.0<=xandx<80
D.0<=xOrx<80
12.在設(shè)計菜單時,如果要在菜單中加入一個菜單分隔條,則菜單分隔條的標(biāo)題必須設(shè)置為(B)
A.加號(+)
B.減號(-)
C.星號(*)
D.感嘆號(!)
13.如果要在程序中顯示一個彈出式菜單,那么要調(diào)用VisualBasic中提供的方法是(D).
A.Print
B.Move
C.Refresh
D.PopupMenu
14.下列可以用來存儲圖像供其他對象使用的控件是(C).
A.ToolBar
B.StatursBar
C.ImageList
D.TreeView
15.當(dāng)單擊工具攔上的按扭時,會觸發(fā)的事件是(A).
A.ButtonClick
B.Change
C.Load
D.KeyPress
16.要利用公用對話框控件來顯示”打開文件”對話框,需要調(diào)用控件的(B)方法.
A.ShowPrinter
B.ShowOpen
C.ShowSave
D.ShowColor
17.對于窗體級變量,下列說法中錯誤的是(C).
A.所在窗體的各子程序都可以訪問
B.其他窗體的子程序不能訪問
C.所在窗體發(fā)子程序不能訪問用Private定義的窗體級變量
D.一定要在所在窗體的通用區(qū)內(nèi)定義
18.從一個字符串中的第3個字符開始,獲取5個字符,應(yīng)使用(B)
A.Len函數(shù)
B.Mid函
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年稷山社工面試試題及答案
- 2025年運(yùn)籌學(xué)對策論試題及答案
- 2025年零售媒體行業(yè)研究報告
- 2025年課程標(biāo)準(zhǔn)考試題及答案
- 鋼結(jié)構(gòu)拆除專項施工方案
- 5f的徑向分布函數(shù)極大值
- c++多線程同步原子操作原理
- 住宅水電施工方案
- 水罐施工方案
- 加熱涂料施工方案
- 兒童社區(qū)獲得性肺炎管理指南(2024修訂)
- 國際貿(mào)易規(guī)則變革研究
- 職業(yè)技能大賽互聯(lián)網(wǎng)營銷師(直播銷售員)賽項備賽試題庫(濃縮300題)
- 智鼎在線測評題庫推理題
- 中職教育一年級上學(xué)期電子與信息《二極管的單向?qū)щ娦浴方虒W(xué)課件
- 《凝練的視覺符號》(新課標(biāo)美術(shù)上課)-圖文
- 幼兒園小班語言活動《拔蘿卜》課件
- 英文繪本故事Brown.Bear.Brown.Bear.What.Do.You.See
- 讀后續(xù)寫人與自然類我?guī)椭従育埦盹L(fēng)后花園重建順利融入當(dāng)?shù)厣鐓^(qū)講義-2024屆高三英語二輪復(fù)習(xí)
- CJJ28-2014城鎮(zhèn)供熱管網(wǎng)工程施工及驗收規(guī)范
- 2024年彌勒市東風(fēng)農(nóng)場有限責(zé)任公司招聘筆試參考題庫附帶答案詳解
評論
0/150
提交評論