VB威力加强版第3大题程序设计及答案.docx
- 文档编号:10436378
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:23
- 大小:19.77KB
VB威力加强版第3大题程序设计及答案.docx
《VB威力加强版第3大题程序设计及答案.docx》由会员分享,可在线阅读,更多相关《VB威力加强版第3大题程序设计及答案.docx(23页珍藏版)》请在冰点文库上搜索。
VB威力加强版第3大题程序设计及答案
1、*编写程序:
输入一元二次方程的系数a,b,c的值,求解一元二次方程的根。
PrivateSubCommand1_Click()
Dima#,b#,c#
a=Val(InputBox("参数a="))
b=Val(InputBox("参数b="))
c=Val(InputBox("参数c="))
Callroot(a,b,c)
EndSub
PrivateSubroot(x#,y#,z#)
Dimt#,x1#,X2#
t=y*y-4*x*z
Ift>0Then
x1=(-y+Sqr(t))/(2*x)
X2=(-y-Sqr(t))/(2*x)
Print"实根";"x1=";x1,"x2=";X2
Else
x1=-y/(2*x):
X2=Sqr(Abs(t))/(2*x)
Print"虚根","x1="&x1&"+"&X2&"i"
EndIf
EndSub
2、*编写程序:
已知x、y、z分别是0~9中的一个数,求x、y、z的值,使得下列成立:
xxz+yzz=532。
(其中xxz和yzz不表示乘积,而是由x、y、z组成的三位数)。
PrivateSubCommand1_Click()
Dimx,y,z
Forx=1To9
Fory=1To9
Forz=1To9
If(100*x+10*x+z)+(100*y+10*z
+z)=532Then
Printx,y,z;
EndIf
Nextz
Nexty
Nextx
EndSub
3、*编写程序:
*计算并输出下面级数前n项(n=50)的部分和。
1*2+2*3+3*4+4*5+……+n*(n+1)+…
PrivateSubCommand1_Click()
DimiAsInteger,nAsInteger,sumAsInteger
n=Val(Text1.Text)
Fori=1Ton
sum=sum+i*(i+1)
Nexti
Printsum
EndSub
4、*编写程序:
编程计算1-2+3-4+5-6…±n的值,n由用户输入
PrivateSubCommand1_Click()
DimsAsInteger,aAsInteger,iAsInteger
n=Val(Text1.Text)
s=0:
a=1
Fori=1Ton
s=s+i*a
a=-a
Nexti
Prints
EndSub
5、*编写程序:
编程计算1+(1+2)+(1+2+3)+…+(1+2+3…+n),n由用户输入。
PrivateSubCommand1_Click()
n=Val(Text1.Text)
Sum=0
Fori=1Ton
sum1=0
Forj=1Toi
sum1=sum1+j
Nextj
Sum=Sum+sum1
Nexti
PrintSum
EndSub
6*编写程序:
*计算并输出下面级数前n项(n=30)的部分和。
1/(1*2)+1/(2*3)+1/(3*4)+…+1/(n*(n+1))+……
PrivateSubCommand1_Click()
DimiAsInteger,nAsInteger,sumAsInteger
Fori=1To30
sum=sum+i*(i+1)
k=1/sum
w=w+k
Nexti
Printw
EndSub
7、*编写程序:
*求出斐波那契数列前20项中的奇数项的和。
*提示:
前两项为:
0,1,从第3项开始,每一项均为其前两项的和(即:
0+1+1+2+3+5+...)。
PrivateSubcommand1_Click()
Dima%,b%,c%,d%
a=0:
b=1
Ford=1To18
c=a+b
a=b
b=c
IfdMod2=1Then
Sum=Sum+c
EndIf
Next
PrintSum
EndSub
8*编写程序:
设计一个程序,随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。
PrivateSubCommand1_Click()
Dimy
Randomize
X=Int(Rnd*900+100)
PrintX
y=strreverse(x)
printy
EndSub
呵呵还有一种方法y=XMod10&Int(X/10)Mod10&Int(X/100)也可以实现逆序排列
还有一种方法Fori=0To2
y=y&Mid(X,3-i,1)
Nexti
Printy
也可以啊O(∩_∩)O~
9、*编写程序:
计算并在窗体上输出数字8的平方根和立方根。
PrivateSubCommand1_Click()
x=8^(1/2)
y=8^(1/3)
Printx;y
EndSub
10、*编写程序:
设计一个程序,输出在指定范围内的3个随机数,范围通过文本框输入。
PrivateSubCommand1_Click()
a=Val(Text1.Text)
b=Val(Text2.Text)
c=Int(a+(b-a+1)*Rnd)
d=Int(a+(b-a+1)*Rnd)
e=Int(a+(b-a+1)*Rnd)
Printc&","&d&","&e
EndSub
11*编写程序:
输入x、y、z三个数,按从小到大的次序显示。
PrivateSubCommand1_Click()
x=Val(Text1.Text)
y=Val(Text2.Text)
z=Val(Text3.Text)
Ifz>xThen
t=z:
z=x:
x=t
EndIf
Ifz>yThen
t=z:
z=y:
y=t
EndIf
Ify>xThen
t=y:
y=x:
x=t
EndIf
Printx&","&y&","&z
EndSub
12*编写程序:
求100至999之间的最大的三个素数。
PrivateSubCommand1_Click()
DimnAsInteger,iAsInteger,jAsInteger,n1AsInteger
DimflagAsBoolean
n1=1
Forn=900To100Step-1
flag=True
Fori=2ToInt(Sqr(n))
IfnModi=0Then
flag=False
ExitFor
EndIf
Next
IfflagThen
DoWhilen1<=3
Printn;
n1=n1+1
ExitDo
Loop
EndIf
Next
EndSub
13、*编写程序:
求100-110之间各整数的平方根
设置窗体的AutoRedraw属性为True.
PrivateSubForm_Load()
Dima&,b!
Fora=100To110
b=Sqr(a)
Printb
Next
EndSub
当然,也可以用format函数来限制结果的格式
如:
b=format(sqr(a);”####,##”)
14、*编写程序:
*要求能够产生一个[10,100]内(包括10和100)的一个随机数,然后判断其是否是素数。
*如果是,在窗体上输出"yes",否则,输出"no"。
PrivateSubCommand1_Click()
a=Int(10+91*Rnd)
Fori=2ToInt(Sqr(a))
If(aModi)=0Then
Printa&":
"&"no"
ExitSub
EndIf
Nexti
Printa&":
"&"yes"
EndSub
EndSub
15、*编写程序:
使用级数求π的值。
根据下式,计算圆周率π的近似值,当计算到绝对值小于0.0001的通项时,认为满足精度要求,停止计算。
用到的公式为π/4=1-1/3+1/5-1/7+...
PrivateSubCommand1_Click()
Dims!
n!
t!
pi!
t=1:
pi=0:
n=1:
s=1
WhileAbs(t)>=0.0001
pi=pi+t
n=n+2
s=-s
t=s/n
Wend
pi=pi*4
Printpi
Endsub
16、*编写程序:
利用随机函数产生20个(50,100)(不包括50,100)范围内的随机整数,显示它们当中的最大值、最小值和平均值。
PrivateSubForm_Click()
Dima,max,min,sum,average
sum=0
max=20
min=50
Fori=1To20
a=(Rnd*50)+50
sum=sum+a
Ifa Ifa>maxThenmax=a Printa Next Printmax Printmin average=sum/20 Printaverage EndSub 17、*编写程序: *使用双重循环,在窗体上输出“九九乘法表”的上三角。 PrivateSubCommand2_Click() DimIAsInteger,JAsInteger Me.Cls ForI=1To9 ForJ=ITo9 PrintFormat(I*J,I&"x"&J&"=@@"); Next Print PrintSpace(7*I); Next EndSub 18、*编写程序: 在文本框中输入小时、分、秒,化成共有多少秒,然后输出总秒数。 PrivateSubCommand1_Click() Dimh%,m%,s%,x! h=Val(Text1.Text): m=Val(Text2.Text) s=Val(Text3.Text) x=h*3600+m*60+s Label1.Caption="共计秒数"&Str(x)&"秒" EndSub 19、*编写程序: 在文本框中输入弧度值,将弧度换算为角度值(度、分、秒)的形式并输出,要求秒数保留三位小数。 PrivateSubCommand1_Click() hudu=Val(Text1.Text) a=Fix(hudu*180/3.14) b=Fix((hudu*180/3.14-a)*60) c=Fix(((hudu*180/3.14-a)*60-b)*60) d=Fix(c) PrintFormat(c,"##,000") Printa&"度"&b&"分"&c&"秒" EndSub 20、*编写程序: 利用InputBox和MsgBox完成小时、分、秒的输入,总秒数的输出。 PrivateSubCommand1_Click() Dima,b,c,d a=InputBox("小时数") b=InputBox("分钟数") c=InputBox("秒数") d=3600*a+60*b+c e=MsgBox("总秒数"&d) EndSub 21、*编写程序: 在文本框中输入长、宽、高,求长方体的表面积并输出。 PrivateSubCommand1_Click() Dima,b,c,d a=Val(Text1.Text) b=Val(Text2.Text) c=Val(Text3.Text) d=2*(a*b+b*c+a*c) Print"长方体的表面积"&"="&d EndSub 22、*编写程序: 某公司每年的销售收入均比前一年增长10个百分点,按此增长率,需要多少年可以实现销售收入翻两番的目标? PrivateSubForm_Click() DimiAsSingle DimsAsInteger'设s为所求年数,定义为整型,结果由窗体输出 i=1 s=0 DoWhilei<=4 i=i*(1+0.1) s=s+1 Loop Print"s=";s EndSub 23、*编写程序: *设某人有现金8000元,银行年利率为7.5%,问如果这些钱如果存入银行,多少年后可以超过4万元。 *(不计复利) 24、*编写程序: 利用InputBox和MsgBox完成3种商品的单价、购买数量的输入,总金额的输出。 25*编写程序: 在文本框中输入3种商品的单价、购买数量,计算并输出所用的总金额。 PrivateSubCommand1_Click() Dima1! b1! c1! Dima2%,b2%,c2% Dimx! a1=Val(Text1.Text): a2=Val(Text2.Text) b2=Val(Text3.Text): b2=Val(Text4.Text) c3=Val(Text5.Text): c2=Val(Text6.Text) x=a1*a2+b1*b2+c1*c2 text7.Text=x EndSub 注: text1为第一种商品的单价,text2为第一种商品的数量,其它依此类推,text7为总计金额o(∩_∩)o… 26、*编写程序: 利用文本框输入一个年份,编程判定该年份是否是闰年。 判定条件是: 能被400整除,或者能被4整除但不能被100整除的年份是闰年。 在文本框中输入年份,使用print输出是否为闰年。 PrivateSubCommand1_Click() DimiAsInteger,sAsInteger s=Int(Text1.Text) IfsMod400=0Or(sMod4=0AndsMod100<>0)Then Print"闰年" Else Print"不是闰年" EndIf EndSub 27、*编写程序: 百钱买百鸡。 公元前5世纪,我国数学家张丘建在《算经》中提出“百鸡问题”: 鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。 百钱买百鸡,问鸡翁、鸡母、鸡雏各几何? PrivateSubCommand1_Click() Forx=0To30 Fory=0To33 If5*x+3*y+(100-x-y)/3=100Then Printx,y,100-x-y EndIf Nexty Nextx 注: X代表公鸡,Y代表母鸡 28、*编写程序: 有一阶梯,如果每步跨2阶,最后余1阶;每步跨3阶,最后余2阶;每步跨5阶,最后余4阶;每步跨6阶,最后余5阶;每步跨7阶,正好到达阶梯顶。 问阶梯至少有多少阶? PrivateSubCommand1_Click() x=0 DoUntilxMod2=1AndxMod3=2AndxMod4=3AndxMod5=4AndxMod6=5AndxMod7=0 x=x+1 Loop Printx EndSub 29、*编写程序: 输出所有的“水仙花数”,所谓的“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。 例如,153是一水仙花数,因为153=13+53+33。 PrivateSubCommand1_Click() Fora=1To9 Forb=1To9 Forc=1To9 Ifa^3+b^3+c^3=a*100+b*10+cThen Printa,b,c EndIf Nextc Nextb Nexta EndSub 30、*编写程序: 输出以下图形: * *** ***** ******* PrivateSubCommand1_Click() Fori=1To4 PrintTab(25-i); Forj=1To2*i-1 Print"*"; Nextj Print Nexti EndSub 31、*编写程序: *打印出以下图案。 * *** ***** ******* ***** *** * PrivateSubCommand1_Click() DimiAsInteger Me.Cls n=4 Fori=1Ton PrintTab(n-i+1);String(2*i-1,"*") Next Fori=n-1To1Step-1 PrintTab(n-i+1);String(2*i-1,"*") Next EndSub 32、*编写程序: *打印出以下图案。 * *+* *+*+* *+*+*+* *+*+* *+* * PrivateSubCommand1_Click() DimiAsInteger Me.Cls n=4 Fori=1Ton PrintTab(25-i); Forj=1To2*i-1 IfjMod2=0Then Print"+"; Else Print"*"; EndIf Nextj Print Nexti Fori=3To1Step-1 PrintTab(25-i); Forj=1To2*i-1 IfjMod2=0Then Print"+"; Else Print"*"; EndIf Nextj Print Nexti EndSub 33、*编写一个图形输出的程序 ********* ******* ***** *** * *** ***** ******* ********* PrivateSubCommand1_Click() DimiAsInteger Me.Cls n=5 Fori=nTo1Step-1 PrintTab(n-i+1);String(2*i-1,"*") Next Fori=2Ton PrintTab(n-i+1);String(2*i-1,"*") Next EndSub 34、*编写程序: *打印出以下图案。 * ** *** **** ***** ****** PrivateSubCommand1_Click() Fori=1To5 Forj=1Toi Print"*"; Nextj Print Nexti EndSub 35、*编写程序,输出下列三角形: 4444444 33333 222 1 PrivateSubCommand1_Click() Fori=4To1Step-1 PrintTab(10-i); Forj=2*i-1To1Step-1 PrintTrim(Str(i)); Nextj Nexti EndSub 36、*编写程序: *打印出以下图案。 1 222 33333 4444444 33333 222 1 PrivateSubCommand1_Click() Fori=1To4 PrintTab(10-i); Forj=1Toi*2-1 PrintTrim(Str(i)); Nextj Nexti Fori=3To1Step-1 PrintTab(10-i); Forj=2*i-1To1Step-1 PrintTrim(Str(i)); Nextj Nexti EndSub 37、*编写程序: *打印出以下图案。 1 121 12321 1234321 12321 121 1 PrivateSubCommand1_Click() Fori=1To4 PrintTab(25-i); Forj=1Toi PrintTrim(Str(j)); Nextj Forj=i-1To1Step-1 PrintTrim(Str(j)); Nextj Print Nexti Fori=5To7 PrintTab(17+i); Forj=1To8-i PrintTrim(Str(j)); Nextj Forj=7-iTo1Step-1 PrintTrim(Str(j)); Nextj Nexti EndSub 注释: Trim()功能删除字符串首部和尾部的空格。 38、*编写程序: *打印出以下图案。 A BBB CCCCC DDDDDDD CCCCC BBB A PrivateSubCom
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 威力 加强 程序设计 答案