VB上机考试习题以及答案.docx
- 文档编号:4409981
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:13
- 大小:70.70KB
VB上机考试习题以及答案.docx
《VB上机考试习题以及答案.docx》由会员分享,可在线阅读,更多相关《VB上机考试习题以及答案.docx(13页珍藏版)》请在冰豆网上搜索。
VB上机考试习题以及答案
VB上机考试
1、利用随机函数产生25个100到999之间的整数,构成55的矩阵,输出该矩阵。
Dima(1To5,1To5)
PrivateSubForm_Click()
Randomize
Fori=1To5
Forj=1To5
a(i,j)=Int(Rnd*(999-100+1)+100)
Printa(i,j);
Nextj
Nexti
EndSub
2、利用随机函数产生25个10到99之间的整数,求其平均值(要求保留3位小数,第4位四舍五入)。
PrivateSubForm_Click()
Fori=1To25
a=Int(Rnd*(99-10+1)+10)
Printa;
s=s+a
Nexti
Avg=s/25
PrintAvg
EndSub
3、在窗体上按下鼠标的右键,记录其坐标。
PrivateSubForm_Load()
Label1.BorderStyle=1
Label1.Alignment=2
EndSub
PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfButton=2Then
Label1.Caption=X&","&Y
EndIf
EndSub
4、利用随机函数产生25个10到99之间的整数,按从小到大的顺序显示。
Dima(1To25)
PrivateSubForm_Click()
Cls
Fori=1To25
a(i)=Int(Rnd*(99-10+1)+10)
Printa(i);
Nexti
Fori=1To25-1
Forj=1To25-i
Ifa(j)>a(j+1)Thentmp=a(j):
a(j)=a(j+1):
a(j+1)=tmp
Nextj
Nexti
Fori=1To25
Printa(i);
Nexti
EndSub
5、利用随机函数产生50个[1,6]之间的整数,分别统计出1的个数,2的个数,3的个数,4的个数,5的个数和6的个数。
Dima(1To6)
PrivateSubForm_Click()
Fori=1To6
a(i)=0
Nexti
Forj=1To50
x=Int(Rnd*(6-1+1)+1)
a(x)=a(x)+1
Nextj
Fori=1To6
Printi&"出现了"&a(i);"次"
Nexti
EndSub
6、在文本框中输入一些英语单词,统计空格的个数。
Dimn%,xAsString,s%
PrivateSubForm_Click()
n=Len(Text1.Text)
x=Text1.Text
Fori=1Ton
IfMid(x,i,1)=""Thens=s+1
Nexti
Print"共出现了"&s&"个空格"
EndSub
7、编程计算下列公式的值,其中n(<10)为从键盘输入的正整数。
S=1!
+3!
+5!
+……+(2*n-1)!
PrivateSubForm_Click()
n=Val(InputBox("请输入一个不大于10的整数"))
s=0
Fori=1To2*n-1Step2
p=1
Forj=1Toi
p=p*j
Nextj
s=s+p
Nexti
Prints
EndSub
8、编程计算下列公式的值,其中n(<10)为从键盘输入的正整数。
S=2!
+4!
+6!
+……+(2*n)!
PrivateSubForm_Click()
n=Val(InputBox("请输入一个不大于10的整数"))
s=0
Fori=2To2*nStep2
p=1
Forj=1Toi
p=p*j
Nextj
s=s+p
Nexti
Prints
EndSub
9、用For…Next语句编程,双击窗体后,在屏幕上显示如图:
PrivateSubForm_Click()
a=0
Fori=1To3
PrintTab(8-2*i-1);
Forj=1To2*i-1
a=a+1
PrintStr(a);
Nextj
Nexti
EndSub
10、用For…Next语句编程,双击窗体后,在屏幕上显示如图:
PrivateSubForm_DblClick()
Fori=1To3
PrintTab(11-3*i);
Forj=2To10Step2
Printj;
Nextj
Nexti
EndSub
11、用For…Next语句编程,双击窗体后,在屏幕上显示如图:
PrivateSubForm_Click()
Fori=1To3
x=2*i+1
PrintTab(10-3*i);
Forj=1To5
Printx;
Nextj
Nexti
EndSub
12、从文本框输入一个正整数,判断该数是否为素数。
DimaAsLong
PrivateSubForm_Click()
a=Val(Text1.Text)
Ifa=2Then
Tag=True
ElseIfaMod2=0Then
Tag=False
Else
Tag=True
Fori=3ToSqr(a)Step2
IfaModi=0ThenTag=False:
ExitFor
Nexti
EndIf
IfTag=TrueThen
Printa;"是素数"
Else
Printa;"不是素数"
EndIf
EndSub
13、利用随机函数产生并显示10个3位数的正整数,找出其中的最大数。
OptionExplicit
Dimi%,max%,loc%
Dima(1To10)AsInteger
PrivateSubForm_Click()
Randomize
Form1.Cls
Fori=1To10
a(i)=Int(Rnd*(999-100+1)+100)
Printa(i)
Nexti
max=a
(1):
loc=1'变量赋值,假设a
(1)为最大数
Fori=2To10
Ifa(i)>maxThenmax=a(i):
loc=i
Nexti
Print"最大的数是";max
Print"在数组中是第";loc;"个数"
EndSub
14、利用随机函数产生并显示10个4位数的正整数,找出其中的最小数。
OptionExplicit
Dimi%,min%,loc%
Dima(1To10)AsInteger
PrivateSubForm_Click()
Randomize
Form1.Cls
Fori=1To10
a(i)=Int(Rnd*(9999-1000+1)+1000)
Printa(i)
Nexti
min=9999
Fori=1To10
Ifa(i) loc=i Nexti Print"最小的数是";min Print"在数组中是第";loc;"个数" EndSub 15、当按下鼠标左键时,窗体的背景色变为红色;松开鼠标左键时,窗体的背景色变为绿色。 PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) IfButton=1ThenForm1.BackColor=vbRed EndSub PrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) IfButton=1ThenForm1.BackColor=vbGreen EndSub 16、编制一个时钟程序,如下图 : OptionExplicit PrivateSubForm_Load() Label1.BackColor=vbWhite Label1.BorderStyle=1 Label1.Alignment=2 Timer1.Enabled=True Timer1.Interval=1000 EndSub PrivateSubTimer1_Timer() Label1.Caption=Time EndSub 17、从键盘输入10个数,按输入的顺序和按输入顺序相反的顺序输出。 OptionExplicit Dimi% Dima(1To10)AsSingle PrivateSubForm_Click() Fori=1To10 a(i)=Val(InputBox("请输入第"&i&"个数")) Printa(i); Nexti Print Fori=10To1Step-1 Printa(i); Nexti EndSub 18、计算圆面积的程序。 程序运行时,单击窗体,然后在下图所示的输入框中输入圆的半径,即可在窗体上显示计算出的圆面积。 OptionExplicit Dimr%,aAsSingle ConstpiAsSingle=3.14159 PrivateSubForm_Click() r=Val(InputBox("请输入圆半径"&vbCrLf&"(1-9): ","输入",5)) a=pi*r^2 Print"半径为";r;"的圆面积为";a EndSub 19、编写一个时钟程序,当选择“24小时”时,以24小时的方式显示如A,当选择“12小时”时,以12小时的方式显示如B。 PrivateSubForm_Load() Timer1.Interval=1000 EndSub PrivateSubTimer1_Timer() SelectCaseTrue CaseOption1.Value Label1.Caption=Time CaseOption2.Value Label1.Caption=Format(Time,"HH: MM: SSAM/PM") EndSelect EndSub 20、设计一个程序,用户界面如图所示。 程序运行后,用户在文本框中输入一段文字,然后按需要单击选择框,用以改变文本的字体、字型、颜色以及大小。 OptionExplicit PrivateSubCheck1_Click() IfCheck1.Value=1Then Text1.FontName="黑体" Else Text1.FontName="宋体" EndIf EndSub PrivateSubCheck2_Click() IfCheck2.Value=1Then Text1.FontUnderline=True Else Text1.FontUnderline=False EndIf EndSub PrivateSubCheck3_Click() IfCheck3.Value=1Then Text1.FontSize=20 Else Text1.FontSize=9 EndIf EndSub PrivateSubCheck4_Click() IfCheck4.Value=1Then Text1.ForeColor=vbGreen Else Text1.ForeColor=vbBlack EndIf EndSub PrivateSubCommand1_Click() Text1.Text="" EndSub PrivateSubCommand2_Click() End EndSub 20做出2个周期的正弦波形.PrivateSubForm_Click() Dimi%,x#,y# ConstpiAsString=3.1415926 Form1.Scale(-2*pi,1.2)-(2*pi,-1.2) Form1.Line(-2*pi,0)-(2*pi,0) Form1.Line(0,1.2)-(0,-1.2) Forx=-2*piTo2*piStep0.01 y=Sin(x) Form1.PSet(x,y) Nextx EndSub 21以窗体为中心,产生1000个半径颜色随机的同心圆. PrivateSubForm_Click() Fori=1To1000 x=Form1.ScaleWidth/2 y=Form1.ScaleHeight/2 r=Int(Rnd*y) c=RGB(255*Rnd,255*Rnd,255*Rnd) Form1.Circle(x,y),r,c Next EndSub 22.九九乘法表 PrivateSubForm_Click() Dimi%,j% Form1.Caption="九九乘法表" PrintTab(48);Caption PrintTab(48);"-------------" Fori=1To9 Forj=1Toi PrintTab((j-1)*12+1);i;"*";j;"=";i*j; Nextj Print Nexti EndSub 23求最大公约数和最小公倍数 PrivateSubCommand2_Click() Text1.Text="" EndSub PrivateSubcommand1_Click() Dimm%,n%,r%,t% m=Val(Text1.Text) n=Val(Text2.Text) Ifm m=n: n=t t=m*n Do r=mModn m=n n=r LoopUntilr=0 Text3.Caption="公约数: "&m Text4.Caption="公倍数"&t/m EndSub 24.用随机函数产生50个两位数,保存于一个一维数组中,要求找出其中的最大值,最小值及所在位置.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB上机考试 习题以及答案 VB 上机 考试 习题 以及 答案