VB经典的程序设计题.docx
- 文档编号:25826970
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:18
- 大小:28.90KB
VB经典的程序设计题.docx
《VB经典的程序设计题.docx》由会员分享,可在线阅读,更多相关《VB经典的程序设计题.docx(18页珍藏版)》请在冰豆网上搜索。
VB经典的程序设计题
累加求和1到100
PrivateSubCommand1_Click()
DimiAsInteger,sumAsInteger
sum=0
Fori=1To100
sum=sum+i
Next
Text1.Text=sum
EndSub
PrivateSubCommand2_Click()
End
EndSub
1到100的奇数和
PrivateSubCommand1_Click()
DimiAsInteger,sumAsInteger
sum=0
Fori=1To100step2
sum=sum+i
Next
Text1.Text=sum
EndSub
PrivateSubCommand2_Click()
End
求n!
PrivateSubCommand1_Click()
DimfactAsDouble,nAsInteger,iAsInteger
n=Val(Text1.Text)
fact=1
Fori=1Ton
fact=fact*i
Next
Text2.Text=fact
EndSub
累加求和1到100
〔Dowhile〕
PrivateSubCommand1_Click()
DimiAsInteger,sumAsInteger
sum=0
i=1
DoWhilei<=100
sum=sum+i
i=i+1
Loop
Text1.Text=sum
EndSub
PrivateSubCommand2_Click()
End
EndSub
〔DoUntil〕
PrivateSubCommand1_Click()
DimiAsInteger,sumAsInteger
sum=0
i=1
Dountili>100
sum=sum+i
i=i+1
Loop
Text1.Text=sum
EndSub
PrivateSubCommand2_Click()
End
EndSub
求平均成绩
PrivateSubCommand1_Click()
DimaAsSingle,bAsSingle,cAsSingle,dAsSingle
DimpjAsSingle
a=60:
b=70:
c=80:
d=90
pj=(a+b+c+d)/4
Text1.Text=Str(pj)
EndSub
求圆的周长
PrivateSubCommand1_Click()
DimrAsDouble
Constpi=3.1415926
r=Val(InputBox("请输入圆的半径"))
Print"圆的周长为:
",2*pi*r
EndSub
输入两个整数mn,使得m>=n,并输出mn
PrivateSubCommand1_Click()
DimmAsInteger,nAsInteger,aAsInteger
m=Val(InputBox("请输入m:
",输入,"m"))
n=Val(InputBox("请输入n:
",输入,"n"))
Ifn>mThen
a=m
m=n
n=a
EndIf
Print"m=",m
Print"n=",n
EndSub
计算sum=1/1!
+1/2!
......+1/10!
PrivateSubCommand1_Click()
DimmAsInteger,nAsLong,sAsDouble
n=1
s=0
Form=1To10
n=n*m
s=s+1/n
Next
Prints
EndSub
定义一个下标上界为10的整型数组,并随机函数为其赋值〔值处于【0,100】之间,计算数组中所有偶数的和
PrivateSubCommand1_Click()
Randomize
Dima%(10)
Dimi%,s%
Fori=0To10
a(i)=101*Rnd()
Next
Fori=0To10
Ifa(i)Mod2=0Then
s=s+a(i)
EndIf
Next
Print"所有偶数的和为:
",s
EndSub
输入一个四位数,分别输出它的个位数字、十位数字、百位数字、和千位数字。
〔待修改〕
PrivateSubCommand1_Click()
Dima%,i%,k%,m%,s$
a=Val(InputBox("请输入一个四位数"))
i=aMod10
j=(aMod100)\10
k=(aMod1000)\100
m=a\1000
s="个位数字是:
"&i&vbcrlf"十位数字是:
"&j&vbcrlf&"百位数字是:
"&k&vbcrlf&"千位数字是:
"&m
Prints
EndSub
计算sum=2!
+4!
+6!
+......+10!
PrivateSubCommand1_Click()
Dima!
i%,sum!
i=1:
a=1
Do
a=2*i
IfiMod2=0Then
sum=sum+a
EndIf
i=i+1
LoopWhilei<=10
Printsum
EndSub
用inputbox输入一个年份,判断该年份是否是闰年,假设是则输出Yes,否则输出No
PrivateSubCommand1_Click()
Dimj%
j=Val(InputBox("请输入年份"))
IfjMod4=0Then
MsgBox("Yes")
Else
MsgBox("No")
EndIf
EndSub
计算并输出下面级数前n项〔n=20〕中奇数项的和。
1*2*3-2*3*4+3*4*5-4*5*6+........+〔-1〕……〔n-1〕*n*(n+1)*(n+2)+.....
PrivateSubCommand1_Click()
Dims!
i%
Fori=1To20Step2
s=s+i*(i+1)*(i+2)
Next
MsgBox(s)
EndSub
如果一个三位数等于其各位数字的立方和,则称其为水仙花数。
请输入一个三位数,并判断其是否为水仙花数。
假设是,用MsgBox输出“yes”,否则输出“no”
PrivateSubCommand1_Click()
Dima%,i%,j%,k%
a=InputBox("请输入一个三位数!
")
i=a\100
j=a\10Mod10
k=aMod10
Ifa=i^3+j^3+k^3Then
MsgBox("yes")
Else
MsgBox("no")
EndIf
EndSub
某分段函数描述如下:
(1)当x为偶数时,y的值为x的二分之一
(2)当x为奇数时,y的值为x的二倍
PrivateSubCommand1_Click()
Dimx!
y!
x=Val(InputBox("请输入X的值!
"))
IfxMod2=0Then
y=x/2
Else
y=2*x
EndIf
MsgBox(y)
EndSub
输入三个数,判断其是否能够构成三角形...........
PrivateSubCommand1_Click()
DimiAsInteger,a
(2)AsInteger,pAsSingle,sAsSingle
Fori=0To20
a(i)=val(inputbox("输入第"&i&"条边的边长:
"))
Nexti
Ifa(0)+a
(1)>a
(2)Anda(0)+a
(2)>a
(1)Anda
(1)+a
(2)>a(0)Then
p=(a(0)+a
(1)+a
(2))/2
s=sqr(p*(p-a(0)*(p-a
(1))*(p-a
(2)))
MsgBox(s)
Else
MsgBox("不能形成三角形!
")
EndIf
EndSub
计算1*3*5....*9
PrivateSubCommand1_Click()
DimsumAsLong,iAsInteger
sum=1
Fori=1To9Step2
sum=sum*i
Next
MsgBox(sum)
EndSub
编写程序,求下面级数前n项的和s=1/1!
-1/2!
+1/3!
-1/4………〔-1〕∧〔n-1〕*1/n!
+…..
求和过程当某一项的绝对值小于0.0001时结束〔注意,该项参与求和〕,计算并输出所求的和s,要求保留6位小数
PrivateSubCommand1_Click()
DimmAsDouble,nAsInteger,sAsDouble,fAsInteger
s=0:
n=-1:
m=1:
f=1
DoWhile1/m>=0.0001
m=m*f
f=f+1
n=-n
s=s+n/m
Loop
s=Format(s,"0.000000")
Prints
EndSub
随即输出一个位于【0,100】之间的整数
PrivateSubCommand1_Click()
Randomize
Dims%
s=(101*Rnd)
Prints
EndSub
编写程序,计算并输出下面级数前n项〔n=50)中的偶数项的和
PrivateSubCommand1_Click()
Dims!
i%
Fori=2To50Step2
s=s+i*(i+1)
Next
MsgBox(s)
EndSub
《VB期末范围题总汇》
1.求随机10个整数的最大值、最小值、平均值以及和;
Dima(1To10)
PrivateSubCommand1_Click()
Randomize
Picture1.Print"产生的随机数为:
"
Fori=1To10
a(i)=Int(Rnd*99+1)
Picture1.Printa(i);
Nexti
Picture1.Print
EndSub
PrivateSubCommand2_Click()
Dimmax,min,ave
max=a
(1)
min=a
(1)
ave=0.1*a
(1)
Fori=2To10
Ifa(i)>maxThenmax=a(i)
Ifa(i) ave=ave+0.1*a(i) Nexti Picture1.Print"最大数为: ";max Picture1.Print"最小数为: ";min Picture1.Print"平均数为: ";ave EndSub 2.求水仙花数 PrivateSubForm_Click() Dima,b,cAsInteger'a(个)b(十)c(百) Fora=0To9 Forb=0To9 Forc=1To9 Ifa^3+b^3+c^3=a+10*b+100*cThen MsgBox100*c+10*b+a EndIf Nextc Nextb Nexta EndSub 求1000以内的所有完数 一个按钮里调用的过程 PrivateSubCommand1_Click() OutputWanNumber1000 EndSub 5.求各位数字之和 inputa: '输入任意数 do b=amod10: '取a的末位数 sum=sum+b: '求和 a=a\10: '去掉末位数 loopuntila=0 print"sum=";sum: '输出 end 〔dimnasstring inputn fori=1tolen(n) sum=sum+val(mid(n,i,1)) nexti printsum〕 6.求最小公倍数 PrivateSubForm_Load() Form1.AutoRedraw=True Dimn1%,m1%,m%,n%,r% n1=InputBox("输入n1") m1=InputBox("输入m1") Ifm1>n1Then'为了求最小公倍数,增加m,n变量 m=m1: n=n1 Else m=n1: n=m1 EndIf Do r=mModn Ifr=0ThenExitDo m=n n=r Loop Printn1;",";m1;"的最大公约数为";n Print"最小公倍数=",m1*n1/n EndSub 7.求逆序数〔感觉题目类型太多〕 9.求质因子问题 PrivateSubCommand1_Click() DimNAsInteger,IAsInteger N=Val(InputBox("请输入2的整数: ")) I=2 Do IfNModI=0Then PrintI; N=N\I Else I=I1 EndIf LoopWhileN1 EndSub 1.判定素数过程 Functionisprime(NumAsLong)AsBoolean IfNum<2Thenisprime=False: ExitFunction DimiAsLong Fori=2ToSqr(Num) If(NumModi)=0Then isprime=False ExitFunction EndIf Nexti isprime=True EndFunction PrivateSubCommand1_Click() DimiAsLong Fori=1To1000 Ifisprime(i)Then Printi EndIf Nexti EndSub 2.求最大公约数过程; FunctionMax公约数(AAsLong,BAsLong)'求出两个数的最大公约数 DimXAsLong,YAsLong,KAsLong X=IIf(A>=B,A,B)'x存入最大值 Y=IIf(A<=B,A,B)'y存入最小值 Do'辗转相除法 K=XModY: IfK=0ThenExitDo X=Y: Y=K Loop Max公约数=Y EndFunction 3.冒泡排序过程 PrivateSubCommand1_Click() Dima(9)AsInteger DimiAsInteger Fori=0To9 a(i)=InputBox("输入整数") Next Sorta Fori=0To9 Printa(i) Next EndSub PrivateSubSort(ByRefa()AsInteger) DimiAsInteger DimjAsInteger DimtAsInteger Fori=LBound(a)+1ToUBound(a) Forj=UBound(a)ToiStep-1 Ifa(j-1)>a(j)Then t=a(j-1) a(j-1)=a(j) a(j)=t EndIf Next Next EndSub 4顺序查找过程 PrivateSubCommand1_Click() Dimi,j,t,a(1To10) Randomize Print"原数组: " Fori=1To10 a(i)=Rnd*10 Print"a("&i&")="&a(i)&Space (2), IfiMod2=0ThenPrint Nexti Print Fori=1To9 Forj=i+1To10
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 经典 程序设计