visualbasic程序设计教程-第四版-刘炳文编著-清华大学
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Visual Basic 程序设计教程
部分习题参考
第四版刘炳文编著清华大学出版社
第五章
5.4、从键盘上输入4个数,编写程序,计算并输出这4个数的和及平均值。通过inputbox 函数输入数据,在窗体上显示和及平均值。
Dim a as single
For i=1 to 4
a=inputbox(“请输入一个数:”,“数据输入”)
sum=sum+a
n=n+1
avg=sum/n
next i
print “和是:”,sum
print “平均值是:”,avg
5.5、编写程序,要求用户输入下列信息:姓名、年龄、通信地址、邮政编码、电话,然后将输入的数据用适当的格式在窗体上显示出来。
Dim a as variant
Fontsize=20
a=inputbox(“请输入姓名:”,“数据输入”)
print “姓名:”;a
a=inputbox(“请输入年龄:”,“数据输入”)
print “年龄:”;a
a=inputbox(“请输入通信地址:”,“数据输入”)
print “通信地址:”;a
a=inputbox(“请输入邮政编码:”,“数据输入”)
print “邮政编码:”;a
a=inputbox(“请输入电话:”,“数据输入”)
print “电话:”;a
5.7.设a=5,b=2.5,c=7.8,编程序计算:
y=(πab)/(a+bc)
程序:
Dim a as single,b as single,c as single
a=5
b=2.5
c=7.8
pi=3.14
y=(pi*a*b)/(a+b*c)
print “结果是:”;y
5.8、输入以秒为单位表示的时间,编写程序,将其转换为几日几时几秒。
Dim a as long,d as integer ,h as integer,s as integer
a=inputbox(“请输入秒数:”,“数据输入”)
d=int(a/86400)
h=int((a-d*86400)/3600)
s=a-d*86400-h*3600
print d;“日”;h;“时”;s;“秒”
5.9、自由落体位移公式为:s=gt2/2+v0t
其中v0为初始速度,g为重力加速度,t为经历的时间,编写程序,求位移量s。设v0=4.8m/s,t=0.5s,g=9.81m/s2,在程序中把g定义为符号常量,用inputbox函数输入v0和t两个变量的值。
Dim v as single,t as single,s as single
g=9.81
v= inputbox(“请输入初始速度:”,“数据输入”)
v=val(v)
t=inputbox(“请输入经历的时间:”,“数据输入”)
t=val(t)
s=g*t*t/2+v*t
print “位移量是:”;s
第七章
7.1.编程计算并输出S的值:s=2+4+6+8+…+100
dim i,s as integer
s=0
for i=2 to 100 step 2
s=s+i
next
print s
7.2、我国现有人口为13亿,设年增长率为1%,编写程序,计算多少年后增加到20亿。Private Sub Form_click()
Dim p As Double
Dim r As Single
Dim n As Integer
p = 130000000
r = 0.01
n = 0
Do While p <= 200000000
p = p * (1 + r)
n = n + 1
Loop
Print n; "年后"; "中国人口增加到"; p
End Sub
7.3、给定三角形的3条边长,计算三角形的面积。编写程序:首先判断给出的3条边能否构成三角形,如可以构成,则计算并输出三角形的面积,否则要求重新输入。当输入-1时结束程序。
Dim a as single;b as single;c as single
Start:
a = inputbox(“请输入第一条边长-1结束:”,”数据输入”)
a=val(a)
if a=-1 then
end
end if
b=inputbox(“请输入第二条边长”,“数据输入”)
b=val(b)
c=inputbox(“请输入第三条边长”,“数据输入”)
c=val(c)
if a+b<=c or a+c<=b or b+c<=a then
msgbox(“您输入的三条边长不能构成三角形,请重新输入!”)
goto start
else
l=(a+b+c)/2
s=sqr(l*(l-a)*(l-b)*(l-c))
end if
print “三角形的面积为:”;s
7.5、编写程序,打印如下所示的“数字金字塔”
1
2 1
1 2 3 2 1
……
1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1
Private Sub Form_Click()
Dim a(1To5)As Integer
For j=1To5
a(j)=j
Next j
For i=1To5
Print Tab(30 - i*3);
For j=1To2*i - 1
If j>i Then
Print a(2*i - j);
Else
Print a(j);
End If
Next j
Next i
End Sub
7.6.勾股定理中三个数的关系是a*a+b*b=c*c。编写程序,输出30以内满足上述关系的整数组合。例如3,4,5就是一个满足要求的整数组合
Private Sub Command1_Click()
Dim Max As Integer, I As Integer, J As Integer, K
Max = 30
For I = 3 To Max - 2