VB程序题目Word格式文档下载.docx
《VB程序题目Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《VB程序题目Word格式文档下载.docx(18页珍藏版)》请在冰点文库上搜索。
在窗体上添加两个文本框和一个命令按钮,要求在Text1中输入购物商品总金额,单击命令按钮,在Text2中输出优惠价。
PrivateSubCommand1_Click()
DimxAsInteger,yAsSingle
x=Val(Text1.Text)
If
x<
100then
x=y
→y=x
Else
If
200then
y=0.95*x
Else
300then
y=0.9*x
y=0.8*x
y=0.7*x
ElseIf
→
EndIf
EndIf
Text2.text=x
→Text2.text=y
程序填空
由输入对话框输入n(n必须为大于零且小于30的自然数),计算下列表达式的值,并在标签框label1上显示。
Sum=1/2+1/6+……+1/(k*(k+1))
(k<
=n)
Privatesubform_click()
Dimnasinteger,sumasdouble,kasinteger
N=val(inputbox(“n=”,”请输入自然数n(n>
0且n<
30)”))
Dowhilen<
=0
orn>
30
N=val(inputbox(“n=”,”请重新输入”))
Loop
Sum=0
K=0
Do
K=
k+1
Sum=sum+1/(k*(k+1))
Loopuntil
(k+1)>
n
Label1.caption=“sum”+str(sum)
Endsub
下面的程序用于打印出以下图形。
Dimi%,j%,k%
ForI=3to0step-1
Forj=0to2*i
Print“”;
Nextj
Fork=5to11-2*i
Print“*”;
Nextk
print
ForI=0to3
Forj=0to2*I+2
print“”;
Fork=0to4-2*i
Nexti
程序设计
求二维数组中最大元素及其所在的行和列,并将最大值存入变量Max中,将最大值的行位置存入row中,列位置存入变量column中
PrivateSubForm_load()
Show
Dima(2,3)AsInteger
DimmaxAsInteger,rowAsInteger,columnAsInteger
a(1,1)=34:
a(1,2)=34:
a(1,3)=43
a(2,1)=34:
a(2,2)=78:
a(2,3)=12
Max=a(1,1)
Row=1
Column=1
Fori=1to2
Forj=1to3
Ifa(i,j)>
maxThenmax=a(i,j):
row=i:
column=j
Printmax,row,column
(事件)双击窗体(响应)求3+6+9+12+15+18+……+300的和,并将结果输出到窗体上。
将结果存入变量sum中。
PrivateSubForm_DblClick()
DimsumAsInteger
Forj=3to300step3
Sum=sum+j
Nextj
Printsum
3题目:
创建一个绘图程序。
当程序运行时,单击“绘图”按钮,在窗体的Picture控件上画出【-pi,pi】即【-3.14,3.14】区间的余弦函数曲线。
要求将图片框的坐标系定义为左上角为(-4,2),右下角为(4,-2),并在图片框中画出坐标的x轴和y轴。
图例:
PrivateSubCommand1_Click()
DimiAsInteger
→
DimiAssingle
Picture1.Scale(4,2)-(4,2)
→Picture1.Scale(-4,2)-(4,-2)
Picture1.Line(-4,0)-(4,0)
Picture1.Line(0,2)-(0,-2)
Picture1.CurrentX=0.2
Picture1.CurrentY=-0.1
Picture1.Print“0”
Picture1.CurrentX=-3.2
Picture1.Print“-n”
Picture1.CurrentX=3.3
Picture1.Print“n”
Picture1.CurrentY=0.9
Picture1.Print“1”
Picture1.CurrentY=-0.8
Picture1.Print“-1”
Fori=-3.141To3.141Step0.001
Picture1.Pset
(i,sin(i))
Picture1.Pset
(i,cos(i))
PrivateSubCommand2_Click()
End
4题目:
用自定义函数的方法求sum(x)。
当x在[-1,1]上,sum(x)=x/2!
+x^2/3!
+x^3/4!
+……+x^n/(n+1)!
;
当x>
1或x<
-1时,sum(x)=0。
当n<
=0时,输入数据错误。
x,n都是由用户输入。
DimsASSingle
DimnAsInteger,xAsSingle,kAsInteger
n=Val(Inputbox(“Pleaseinputaintegervalue:
”))
x=Val(Inputbox(“Pleaseinputasinglevalue:
”))
ifn<
=0then
k=MsgBox(“数据输入错误!
”,vbRetryCancel,”数据输入”)
ExitSub
s=sum(x,n)
FunctionSum(xAsSingle,nAsInteger)
DimiAsInteger,ssAsLong
ss=1
sum=0
Ifx>
1Orx<
-1Then
Exit→sum=0
Fori=2Ton
→Fori=2Ton+1
ss=ss*i
sum=x^(i-1)/ss→sum=sum+x^(i-1)/ss
Endif
EndFunction
以下程序段用于实现:
输入两个正整数m和n,求其最大公因数和最小公倍数。
Privatesubform_click()
Dima%,b%,num1%,num2%,temp
Num1=inputbox(“请输入一个正整数”)
Num2=inputbox(“请输入一个正整数”)
Ifa<
bthen
Temp=num1:
num1=num2:
num2=temp
Endif
A=num1
B=num2
Dowhileamodb<
>
0
Temp=amodb
A=b
b=temp
Print“最大公约数为:
”;
b
Print”最小公倍数为:
num1*num2/b
窗体上建立一个文本框text1,用于显示结果。
单击按钮弹出输入对话框,录入0-6之间的数值,判断输出值为星期几。
Privatesubcommand1_click()
Dimxasinteger
X=val(inputbox(“请输入星期几(0~6)”))
Selectcasex
Caseis=0
Text1.text=“星期日”
Caseis=1
Text1.text=“星期1”
Caseis=2
Text1.text=“星期2”
Caseis=3
Text1.text=“星期3”
Caseis=4
Text1.text=“星期4”
Caseis=5
Text1.text=“星期5”
Caseis=6
Text1.text=“星期6”
Case
else
Text1.text=“输入错误”
Endselect
(事件)单击窗体(响应)求100以内偶数的和,并将结果输出在窗体上。
Sum=0
Forj=2To100Step2
Sum=sum+j
(事件)单击窗体(响应)求10!
的值。
并将结果输出到窗体上。
DimsumAsLong
Sum=1
Forj=1To10do
Sum=sum*j
5题目:
请修改程序中的错误,保证程序最后输出效果如图1所示。
DimiAsInteger
Fori=1To7
PrintSpc(7);
→PrintSpc(7-i);
Ifi>
=1Then
→Ifi<
=1Then
Print“*”
Print“*”;
Spc(2*(i-1));
”*”
Print“*”;
Spc(2*(i-1)-1);
”*”
6题目:
输入一个字符串,将所有的小写字母都转换为大写字母。
Dims1AsString,s2AsString,iAsInteger,tAsString
s1=Inputbox(“输入字符串,以#号结束”)
i=1
s1=Mid(s1,i,1)→t=Mid(s1,i,1)
Whilet<
“#”
t>
=“a”Andt<
=“z”Thent=Chr(Asc(t)-30)
=“z”Thent=Chr(Asc(t)-32)
s2=s2+t
i=i+1
t=Mid(s1,i,1)
Wend
Print“新字符串为:
s1→
Print“新字符串为:
s2
下面的时间过程判断文本框text1中输入的数所在区间,并在文本框text2中输出判断结果。
privatesubcommand1_click()
Dimint1asinteger
int1=val(text1.text)
Selectcaseint1
Case0
Text2.text=“值为0”
Case1to10
Text2.text=“值在1和10之间(包括1和10)”
CaseIs>
10
Text2.text=“值大于10”
Caseelse
Text2.text=“值小于0”
(事件)单击窗体。
(响应)求1!
+2!
+3!
+5!
结果存入变量S中。
DimsAsInteger
S=0
Fori=1To5
x=1
Forj=1Toi
x=x*j
S=s+x
6题目:
(事件)单击窗口(响应)求1-1/2+1/3-1/4+……+1/99-1/100的值将结果存入变量J中。
DimIAsSingle
x=0
j=0
Fori=1To100
x=(-1)^(i+1)/i
J=j+x
Printj
Fori=2to8→Fori=2to8step2
PublicFunctionfact()→PublicFunctionfact(Byvaln%)
Fact=i
→Fact=t
x=y
→y=x
ElseIf
Text2.text=x
→Text2.text=y
Dowhilen<
=0orn>
30
K=k+1
Loopuntil(k+1)>
*
***
*****
*******
Fork=5to!
!
11-2*i!
print“”;
print