重庆医科大学 VB上机+答案.docx
- 文档编号:10214802
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:19
- 大小:84.21KB
重庆医科大学 VB上机+答案.docx
《重庆医科大学 VB上机+答案.docx》由会员分享,可在线阅读,更多相关《重庆医科大学 VB上机+答案.docx(19页珍藏版)》请在冰豆网上搜索。
重庆医科大学VB上机+答案
1利用随机函数产生25个100到999之间的整数,构成55的矩阵,输出该矩阵。
PrivateSubForm_Click()
Dimm%,n%
Fori=1To25
m=Int(Rnd*900+100)
Printm;
IfiMod5=0ThenPrint
Nexti
EndSub
2利用随机函数产生25个10到99之间的整数,求其平均值(要求保留3位小数,第4位四舍五入)。
PrivateSubForm_Click()
Dimk#,n%
n=0
Fori=1To25
m=Int(Rnd*90+10)
Printm;
n=n+m
Nexti
Print"25个数的和为:
",n
k=n/25
Print"25个数的平均值为:
",Format(k,"#.000")
EndSub
3利用随机函数产生25个10到99之间的整数,按从小到大的顺序显示。
PrivateSubForm_Click()
Dima%(1To25)
Fori=1To25
a(i)=Int(Rnd*90+10)
Printa(i);
Nexti
Fori=1To24
p=i
Forj=i+1To25
Ifa(p)>a(j)Thenp=j
Nextj
t=a(i):
a(i)=a(p):
a(p)=t
Nexti
Print"从小到大排序为:
";
Fori=1To25
Printa(i);
Nexti
EndSub
4利用随机函数产生50个[1,6]之间的整数,分别统计出1的个数,2的个数,3的个数,4的个数,5的个数和6的个数。
PrivateSubForm_Click()
a1=0
a2=0
a3=0
a4=0
a5=0
a6=0
Fori=1To50
m=Int(Rnd*6+1)
Printm;
Ifm=1Thena1=a1+1
Ifm=2Thena2=a2+1
Ifm=3Thena3=a3+1
Ifm=4Thena4=a4+1
Ifm=5Thena5=a5+1
Ifm=6Thena6=a6+1
Nexti
Print"1的个数为:
",a1
Print"2的个数为:
",a2
Print"3的个数为:
",a3
Print"4的个数为:
",a4
Print"5的个数为:
",a5
Print"6的个数为:
",a6
EndSub
5利用随机函数产生并显示10个3位数的正整数,找出其中的最大数。
PrivateSubForm_Click()
Dima%(1To10)
Dimmax%
Fori=1To10
a(i)=Int(Rnd*900+100)
Printa(i);
Ifa(i)>maxThenmax=a(i)
Nexti
Print"最大数为:
";max
EndSub
6从键盘输入10个数,按输入的顺序和按输入顺序相反的顺序输出。
PrivateSubForm_Click()
Dima%(1To10)
Print"顺序显示"
Fori=1To10
a(i)=InputBox("请输入第"&i&"个数")
Printa(i);
Nexti
Print"反序输入"
Fori=10To1Step-1
Printa(i);
Nexti
EndSub
7运行时单击窗口,调用Inputbox函数输入一个数,判断其是否为正整数,如果为正整数判断其奇偶性,把结果信息显示在MsgBox对话框上
PrivateSubForm_Click()
Dimm%
m=Val(InputBox("请输入一个数"))
Ifm>0Then
IfmMod2=0Then
PrintMsgBox(m&"是正整数"&"并且"&m&"是偶数")
Else
PrintMsgBox(m&"是正整数"&"但是"&m&"是奇数")
EndIf
EndIf
Ifm<0Then
MsgBox(m&"不是正整数,因此不判断奇偶性")
EndIf
EndSub
8输入一个整数,编写一函数判断该数是否是偶数
PrivateSubForm_Click()
Dimm%
m=Val(InputBox("请输入一个整数"))
IfmMod2=0Then
Printm;"是偶数"
Else
Printm;"不是偶数"
EndIf
EndSub
9运行时单击窗口,调用Inputbox函数输入一个数,判断其是否为正整数,如果为正整数判断其奇偶性,把结果信息显示在MsgBox对话框上
PrivateSubForm_Click()
Dimm%
m=Val(InputBox("请输入一个数"))
Ifm>0Then
IfmMod2=0Then
PrintMsgBox(m&"是正整数"&"并且"&m&"是偶数")
Else
PrintMsgBox(m&"是正整数"&"但是"&m&"是奇数")
EndIf
EndIf
Ifm<0Then
MsgBox(m&"不是正整数,因此不判断奇偶性")
EndIf
EndSub
10从文本框输入一个正整数,判断该数是否为素数。
建立一个Text和CommandButton
PrivateSubCommand1_Click()
DimNAsLong,FlagsAsBoolean
N=Val(Text1.Text)
Flags=True
Fori=2ToSqr(N)
IfNModi=0Then
Flags=False
ExitFor
EndIf
Next
MsgBoxN&IIf(Flags,"","不")&"是一个素数"
EndSub
另外一个方法建立一个命令1个Text,1个Label1个CommandButton
PrivateSubCommand1_Click()
Dimx%,i%
x=Val(Text1.Text)
Tag=True
Fori=2Tox-1
IfxModi=0Then
Tag=False
ExitFor
EndIf
Nexti
IfTag=TrueThen
Label1.Caption=Text1.Text&"是素数"
Else
Label1.Caption=Text1.Text&"不是素数"
EndIf
EndSub
11利用Inpubox函数输入2个正整数,求其最小公倍数,结果用Msgbox函数显示。
PrivateSubForm_Click()
Dimm%,n%,r%,t%
m=Val(InputBox("输入第一个正整数"))
n=Val(InputBox("输入第二个正整数"))
Ifm m=n: n=t t=m*n Do r=mModn n=r LoopUntilr=0 PrintMsgBox("这两个数的最小公倍数是: "&t/m) EndSub 12输入一个整数,编写一函数判断该数是否同时是2和7的倍数 PrivateSubForm_Click() Dimm% m=Val(InputBox("请输入一个整数")) IfmMod2=0AndmMod7=0Then Printm;"同时是2和7的倍数" Else Printm;"不同时是2和7的倍数" EndIf EndSub 13编程计算下列公式的值,其中n(<10)为从键盘输入的正整数。 S=1! +2! +3! +……+n! PrivateSubForm_Click() Dimn% n=Val(InputBox("输入n的值(n<10)")) Sum=0 Fori=1Ton s=1 Forj=1Toi s=s*j Nextj Sum=Sum+s Nexti PrintSum EndSub 14当按下鼠标左键时,窗体的背景色变为红色;松开鼠标左键时,窗体的背景色变为绿色。 PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) Form1.BackColor=RGB(255,0,0) EndSub PrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) Form1.BackColor=RGB(0,255,0) EndSub 15在窗体上按上鼠标的右键,记录其的坐标。 建立Lable1 PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) Label1.Caption=X&","&Y EndSub 16在文本框中输入一些英语单词,统计空格的个数。 建立1个CommandButton,1个Text,1个Label PrivateSubCommand1_Click() n=0 strold="" s=Text1.Text Fori=1ToLen(s) Strnew=UCase(Mid(s,i,1)) If(Strold<"A"OrStrold>"Z")And(Strnew>="A"AndStrnew<="Z")Then n=n+1 EndIf Strold=Strnew Nexti Label1.Caption=n EndSub 17计算圆面积的程序。 程序运行时,单击窗体,然后在下图所示的输入框中输入圆的半径,即可在窗体上显示计算出的圆面积 建立一个Text一个CommandButton PrivateSubCommand1_Click() r=Val(Text1.Text) a=3.14159256*r^2 Printa EndSub 18添加2标签和2文本框,运行时在第一个文本框中输入一个字符,然后按回车键,对应字符的ASCII编码值显示在第二个文本框中。 提示: 用KeyPress事件,回车键ASCII值为13 建立2个Text2个Label PrivateSubText1_KeyPress(KeyAsciiAsInteger) IfKeyAscii=13Then Text2.Text=Asc(Text1.Text) EndIf EndSub 19用For…Next语句编程,双击窗体后,在屏幕上显示如图: PrivateSubForm_DblClick() x=0 Forn=1To3 Form=1To2*n-1 x=x+1 PrintTab(16-n*7+m*7);x; Nextm Print Nextn EndSub 20用For…Next语句编程,双击窗体后,在屏幕上显示如图: PrivateSubForm_DblClick() Dima%(1To5) Fori=1To5 a(i)=i*2 PrintTab(6+i*4);a(i); Nexti Print Fori=1To5 a(i)=i*2 PrintTab(6+(i-1)*4);a(i); Nexti Print Fori=1To5 a(i)=i*2 PrintTab(6+(i-2)*4);a(i); Nexti EndSub 21利用双重循环,实现如图。 PrivateSubForm_Click() x=0 Forn=1To4 Form=1To2*n-1 x=x+3 PrintTab(16-n*5+m*5);x; Nextm Print Nextn EndSub 22编制一个时钟程序,如下图: 建立一个Label PrivateSubForm_Click() Label1.Caption=Now EndSub 只有时间无日期 建立一个Text PrivateSubForm_Click() Text1.Text=Time EndSub 23画出如图所示的图形 PrivateSubForm_Click() Cls Form1.Scale(-8,2)-(8,-2) Line(-7.5,0)-(7.5,0) Line(0,1.9)-(0,-1.9) CurrentX=7.5: CurrentY=0.2: Print"x" CurrentX=0.5: CurrentY=2: Print"y" Fori=-1To1 Ifi<>0Then CurrentX=0.7: CurrentY=i+0.1: Printi Line(0.5,i)-(0,i) EndIf Nexti CurrentX=6.283: CurrentY=0 Forx=-6.283To6.283Step0.01 y=Sin(x) Line-(x,y) Nextx EndSub 24画出如图所示的图形 PrivateSubForm_Click() Dimi% Fori=0To7 Me.FillStyle=i Me.Circle(500+800*i,800),400 Nexti EndSub 1.找最大最小数 ⑴利用随机函数产生并显示10个4位数的正整数,找出其中的最小数、最大数。 PrivateSubForm_Click() Dima%(1To10) Dimmin% Fori=1To10 a(i)=Int(Rnd*9000+1000) Printa(i); Nexti min=a (1) Fori=2To10 Ifa(i) Ifa(i)>maxThenmax=a(i) Nexti Print Print"最小数为: ";min,"最大数为: ";max EndSub ⑵利用随机函数产生并显示10个3位数的正整数,找出其中的最大数。 PrivateSubForm_Click() Dima%(1To10) Dimmin% Fori=1To10 a(i)=Int(Rnd*900+100) Printa(i); Nexti max=a (1) Fori=2To10 Ifa(i) Nexti Print Print"最小数为: ";max EndSub 2编程计算下列公式的值,其中n(<10)为从键盘输入的正整数。 ⑴S=2! +4! +6! +……+(2*n)! PrivateSubForm_Click() Dims#,i%,j%,x% x=InputBox("请输入小于10的正整数") sum=0 Fori=1Tox s=1 Forj=1To2*i s=s*j Nextj sum=sum+s Nexti Printsum EndSub ⑵S=1! +3! +5! +……+(2*n-1)! PrivateSubForm_Click() Dims#,i%,j%,x% x=InputBox("请输入小于10的正整数") sum=0 Fori=1Tox s=1 Forj=1To2*i-1 s=s*j Nextj sum=sum+s Nexti Printsum EndSub 3用For…Next语句编程,双击窗体后,在屏幕上显示如图: PrivateSubForm_DblClick() Dima%(1To5) Fori=1To5 a(i)=3 PrintTab(12+i*6);a(i); Nexti Print Fori=1To5 a(i)=5 PrintTab(12+(i-1)*6);a(i); Nexti Print Fori=1To5 a(i)=7 PrintTab(12+(i-2)*6);a(i); Nexti EndSub 4编写一个时钟程序,当选择“24小时”时,以24小时的方式显示如A,当选择“12小时”时,以12小时的方式显示如B。 一个text,一个frame,两个option 5设计一个程序,用户界面如图所示。 程序运行后,用户在文本框中输入一段 文字,然后按需要单击选择框,用以改变文本的字体、字型、颜色以及大小。 参考实验书55页8-4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 重庆医科大学 VB上机+答案 重庆 医科大学 VB 上机 答案