常见VB考试题型.docx
- 文档编号:23258858
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:54
- 大小:83.17KB
常见VB考试题型.docx
《常见VB考试题型.docx》由会员分享,可在线阅读,更多相关《常见VB考试题型.docx(54页珍藏版)》请在冰豆网上搜索。
常见VB考试题型
1输入半径,求圆面积和球体积。
PrivateSubForm_Load()
DimrAsSingle,sAsSingle,vAsSingle
r=InputBox("请输入半径r:
","输入数据")
s=3.14*r^2
v=4/3*r^3*3.14
'Print"圆面积为:
";s
'Print"球体积为:
";v
MsgBox("圆面积为:
"&s&Space
(2)&"球体积为:
"&v)
EndSub
2输入两个数存放在x和y中,比较大小,保证大数放在x中,小的数放在Y中。
PrivateSubCommand1_Click()
Print"比较前:
"
X=InputBox("请输入X")
Y=InputBox("请输入Y")
Print"X=";X,"Y=";Y
IfX Z=Y Y=X X=Z EndIf Print"比较后: " Print"X=";X,"Y=";Y EndSub 3判断一个整数的奇偶性 PrivateSubForm_Click() x=Val(InputBox("请输入一个数;")) IfxMod2=0Then MsgBox(x&"是偶数") Else MsgBox(x&"是奇数") EndIf EndSub 4帐号和密码 PrivateSubCommand1_Click() IfText1.Text="12345"Then IfText2.Text="12345"Then MsgBox"登录成功",64+1,"登录" Else MsgBox"密码错误,请重新输入",16 EndIf Else MsgBox"用户不存在",16+1,"登录" EndIf EndSub 5判断一个数是整数还是小数,如果是整数再判断其奇偶性。 PrivateSubForm_Click() x=InputBox("请输入一个数;") IfInStr(1,x,".")=0Then IfxMod2=0Then MsgBox(x&"是整数,是偶数! ") Else MsgBox(x&"是整数,是奇数! ") EndIf Else MsgBox(x&"是小数") EndIf EndSub 6书店优惠售书 PrivateSubCommand1_Click() DimxAsSingle,yAsSingle x=Val(Text1.Text) SelectCasex CaseIs<=100 y=x*0.8 CaseIs<=200 y=x*0.7 CaseIs<=300 y=x*0.5 CaseElse y=x*0.3 EndSelect Label3.Caption=y&"元" EndSub 7设计一个计程车收费程序 PrivateSubCommand1_Click() X=Val(Text1.Text) SelectCaseX CaseIs<=3 Label3.Caption=6 CaseIs<=30 Label3.Caption=6+(X-3)*1.5 CaseElse Label3.Caption=6+27*1.5+(X-30)*2 EndSelect EndSub 8输入10个数,输出累加之和。 PrivateSubCommand1_Click() DimSAsSingle,iAsInteger,xAsSingle S=0 Fori=1To10 x=Val(InputBox("请输入第"&i&"个数")) Print"第"&i&"个数"&x S=S+x Nexti Print"十个数累加之和为"&S EndSub 9输入10个数,输出偶数之和。 PrivateSubCommand1_Click() DimSAsSingle,xAsSingle DimnAsInteger,iAsInteger S=0 Fori=1To10 x=Val(InputBox("请输入第"&i&"个数")) Print"第"&i&"个数"&x IfxMod2=0Then S=S+Val(x) EndIf Nexti Print"十个数中偶数累加之和为"&S EndSub 10求S=1+2+3+……+100 PrivateSubCommand1_Click() DimIAsInteger,SAsLong S=0 ForI=1To100 S=S+I NextI PrintTab(10);"S=";S EndSub 11求S=1+3+5+……+99 PrivateSubCommand1_Click() s=0 Fori=1To100Step2 s=s+i Nexti Print"s=";s EndSub 12S=1+22+32+……+102,计算并输出s PrivateSubCommand1_Click() s=0 Fori=1To10 s=s+i^2 Nexti Picture1.Print"s=";s EndSub 13S=1+22+32+……+n2,问n为多少时,s的值大于100000? PrivateSubCommand1_Click() s=0 n=0 DoWhiles<=100000 n=n+1 s=s+n^2 Loop Print Print Print Print Print PrintTab(15);"n=";n EndSub 141)S=1/2+1/4+1/6+1/8+1/10+…+1/20,求s并输出s的值。 PrivateSubCommand1_Click() DimsAsSingle,iAsInteger s=0 Fori=2To20Step2 s=s+1/i Nexti Print"s=";s EndSub 15s=1×2×3×……×10 求n! n为[1~10]之间的随机整数。 PrivateSubCommand1_Click() DimsAsLong,iAsInteger s=1 Fori=1To10 s=s*i Nexti Print"10! =";s EndSub 16已知一数列的前两项均为1,从第3项开始,每一项的值为其前面两项之和,求数列的前20项的和。 PrivateSubCommand1_Click() DimsAsInteger,f1AsInteger Dimf2AsInteger,f3AsInteger s=0 f1=1 f2=1 s=f1+f2 Fori=3To20 f3=f1+f2 s=s+f3 f1=f2 f2=f3 Nexti Print"s=";s EndSub 17 PrivateSubCommand1_Click() DimsAsSingle,f1AsInteger,f2AsInteger Dimf3AsInteger,iAsInteger s=0 f1=1 f2=2 Fori=1To20 s=s+f2/f1 f3=f2 f2=f1+f2 f1=f3 Nexti Print"s=";s EndSub 18S=1! +2! +3! +....+10! PrivateSubCommand1_Click() DimsAsLong,s1AsLong,iAsInteger,jAsInteger s=0 Fori=1To10 s1=1 Forj=1Toi s1=s1*j Next s=s+s1 Nexti Print Print"s=";s EndSub 考虑另一种算法 见其他打印部分 19s=1+(1+2)+(1+2+3)+…+(1+2+…+10) PrivateSubCommand1_Click() DimsAsInteger,s1AsInteger DimiAsInteger,jAsInteger s=0 Fori=1To10 s1=0 Forj=1Toi s1=s1+j Nextj s=s+s1 Nexti Print"s=";s EndSub 20s=1-1/3! +1/5! -1/7! +…直到某一项的绝对值小于10^(-5) PrivateSubCommand1_Click() DimSAsSingle,S1AsSingle DimiAsInteger,FAsInteger,JAsInteger S=0 S1=1 i=1 F=1'正负符号标志 DoWhile1/S1>10^(-5) S1=1 J=1 DoWhileJ<=i S1=S1*J J=J+1 Loop S=S+1/S1*F i=i+2 F=-F'换符号 Loop Print Print"S=";S-1/S1,"I=";i 'S=0 'x=1 'n=1 'DoWhile1/x>=10^(-5) 'S=S+(1/x)*(-1)^(n+1) 'x=x*(n*2)*(2*n+1) 'n=n+1 'Loop 'Print"S=";S EndSub 21s=2+22+222+2222+22222+222222 PrivateSubCommand1_Click() DimsAsLong,s1AsLong,iAsInteger,jAsInteger s=0 Fori=1To6 s1=0 Forj=1Toi s1=s1+2*10^(j-1) Next s=s+s1 Next Print"s=";s EndSub 22S=a+aa+aaa+……+aaaa(N个a)其中a是一个[1,9]的随机整数,N是一个[5,10]的随机整数。 PrivateSubCommand1_Click() DimaAsInteger,nAsInteger DimsAsLong,s1AsLong,iAsInteger,jAsInteger Cls Randomize a=Int(9*Rnd)+1 n=Int(6*Rnd)+5 s=0 Fori=1Ton s1=0 Forj=1Toi s1=s1+a*10^(j-1) Nextj s=s+s1 Nexti Print"当a=";a,"n=";n;"时" Print Print"s=";s EndSub 23S=1+12+123+1234+12345+123456 PrivateSubCommand1_Click() DimsAsLong,s1AsLong,iAsInteger,jAsInteger s=0 s1=0 Fori=1To6 s1=s1*10+i Prints1 s=s+s1 Nexti Print"s=";s 's=0 'Fori=1To6 's1=0 'Forj=1Toi 's1=s1+j*10^(i-j) 'Nextj 's=s+s1 'Nexti 'Print"s=";s EndSub 24将一字符串逆序输出 PrivateSubCommand1_Click() DimnAsInteger,s1AsString,s2AsString s1=Text1.Text s2="" n=Len(Trim(Text1.Text)) Fori=nTo1Step-1 s2=s2&Mid(s1,i,1) Nexti Text2.Text=s2 EndSub 25判断任给一大于3的整数是否是素数。 PrivateSubCommand1_Click() DimNAsInteger,IAsInteger N=InputBox("请输入一个大于3的整数") ForI=2ToN-1 IfNModI=0Then ExitFor EndIf NextI IfN=IThen MsgBox(N&"是素数") Else MsgBox(N&"不是素数") EndIf EndSub 26输出3~100之间的素数 输出 PrivateSubCommand1_Click() DimnAsInteger,iAsInteger Forn=3To100 Fori=2Ton-1 IfnModi=0Then ExitFor EndIf Nexti Ifi=nThen Printn EndIf Nextn EndSub 换行输出 PrivateSubCommand2_Click() DimnAsInteger,iAsInteger DimmAsInteger m=0 Forn=3To100 Fori=2Ton-1 IfnModi=0Then ExitFor EndIf Nexti Ifi=nThen m=m+1 IfmMod5=0Then Printn Else Printn; EndIf EndIf Nextn EndSub 'PrivateSubCommand2_Click() 'DimnAsInteger,iAsInteger 'dimmasin 'm=0 'Forn=3To100 'Fori=2Ton-1 'IfnModi=0Then 'ExitFor 'EndIf 'Nexti 'Ifi=nThen 'm=m+1 'IfmMod5=0Then 'PrintTab(6*m);n 'm=0 'Else 'PrintTab(6*m);n; 'EndIf 'EndIf 'Nextn 'EndSub 27输出100~999之间的水仙花数 PrivateSubCommand1_Click() DimIAsInteger,AAsInteger DimBAsInteger,CAsInteger ForI=100To999 A=Int(I/100) B=Int(I/10)-A*10 C=I-A*100-B*10 IfA^3+B^3+C^3=IThen Picture1.PrintI; EndIf NextI EndSub 28陈婷的QQ密码是一个5位数。 但因为有一段比较长的日子没上了,陈婷把这个密码给忘了。 不过陈婷的生日是8月1日,她妈妈的生日是9月1日,她特别喜欢把同时是8l和9l的倍数用作密码。 陈婷还记得这个密码的中间一位(百位数)是l。 你能设计一个程序帮她找回这个密码吗? PrivateSubCommand1_Click() '陈婷密码: 5位数,能被81,91整除,百位是1 DimiAsLong,xAsInteger Fori=10100To99199 x=i\100Mod10 Ifx=1Then IfiMod91=0AndiMod81=0Then MsgBox"密码是"&i EndIf EndIf Nexti EndSub 29百元买百鸡问题。 假定小鸡每只5角,公鸡每只2元,母鸡每只3元。 现在有100元钱要求买100只鸡(每种鸡至少一只),编程列出所有可能的购鸡方案 OptionExplicit PrivateSubCommand1_Click() DimXAsInteger,YAsInteger DimzAsInteger,IAsInteger I=0 ForX=1To100 ForY=1To50 Forz=1To33 IfX+Y+z=100And0.5*X+2*Y+3*z=100Then I=I+1 Picture1.Print"方案"&I&": 小鸡"&X&"只,"_ &"公鸡"&Y&"只,"&"母鸡"&z&"只。 " EndIf Nextz,Y,X EndSub 30鸡兔合笼共20只,脚46只问鸡几只? 兔几只? PrivateSubCommand1_Click() DimxAsInteger,yAsInteger Forx=1To20 Fory=1To20-x Ifx+y=20And2*x+4*y=46Then Print"鸡"&x&"只","兔"&y&"只" EndIf Nexty Nextx EndSub 31找出100之内的自然数对。 (两数的和是某个自然数的平方,两数的差也是某数的平方) PrivateSubCommand1_Click() Fori=1To99 Forj=i+1To100 IfInt(Sqr(j-i))=Sqr(j-i)AndInt(Sqr(j+i))=Sqr(j+i)Then Printi,j EndIf Nextj Nexti EndSub 32找出1000-9999之间的玫瑰花数。 PrivateSubCommand1_Click() DimiAsInteger Dima1AsInteger,a2AsInteger Dima3AsInteger,a4AsInteger Fori=1000To9999 a1=i\1000 a2=i\100Mod10 a3=i\10Mod10 a4=iMod10 Ifa1^4+a2^4+a3^4+a4^4=iThen Printi EndIf Nexti EndSub 33猴子吃桃子。 小猴在某天摘桃若干个,当天吃掉一半多一个;第二天吃了剩下的桃子的一半多一个;以后每天都吃尚存桃子的一半多一个,到第7天要吃时只剩下一个,问小猴共摘下了多少个桃子? OptionExplicit PrivateSubCommand1_Click() DimXAsInteger,IAsInteger X=1 ForI=6To1Step-1 X=(X+1)*2 Picture1.Print"第"&I;"天桃子数是: "&X&"个。 " NextI EndSub 34瓜农有西瓜1020个,每天能卖掉前一天剩下的总数的一半还多两个,问多少天能卖完。 OptionExplicit PrivateSubCommand1_Click() DimXAsInteger,IAsInteger X=1020 I=0 DoWhileX>0 X=X/2-2 I=I+1 Loop Label4.Caption="第"&I&"天能卖完." EndSub 35一球从10米高空落下,每次弹起高度为落下高度的40%,求第8次落下,小球经历的路程。 PrivateSubCommand1_Click() DimsAsSingle,hAsSingle,iAsInteger s=10 h=10 Fori=2To8 h=h*0.4 s=s+h*2 Nexti Picture1.Print"球第八次落下经历的路程是: ";s;"米" EndSub 36输入十个数,输出其中的最大数和最小数 PrivateSubCommand1_Click() DimxAsSingle,iAsInteger DimmaxAsSingle,minAsSingle x=Val(InputBox("请输入第1个数")) Printx max=x: min=x Fori=2To10 x=Val(InputBox("请输入第"&
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常见 VB 考试 题型