vb教科书答案(中国农业出版社)
- 格式:doc
- 大小:175.50 KB
- 文档页数:13
二、教科书中的练习题参考答案
习题三,参考答案
一、VB定义了哪几种数据类型?各自有什么特点?变量有哪几种类型?常量有哪几种类型?
答:在Visual Basic中,数据类型分为三大类:基本数据类型、用户自定义数据类型、枚举类型。基本数据类型是系统定义的一些类型,用户自定义数据类型和枚举类型时用户根据实际情况可以自己定义的类型,并且类型中可以混合基本数据类型。
变量有整型、长整型、单精度浮点型、双精度浮点型、货币型、字节型、字符串型、布尔型、日期型、对象型、变体型数据,还可以使用户自定义类型和枚举类型。
常量有整型、长整型、单精度浮点型、双精度浮点型、货币型、字符串型、布尔型、日期型。
二、说明下列哪些是Visual Basic合法的直接常量,并分别指出它们的类型。
100.0 %100 123D3 0100 “ASDF”
”1234.5” #2006/6/1# 100# &H123 True
答:合法的直接常量有:100.0、123D3、0100、“ASDF”、”1234.5”、 #2006/6/1#、100#、&H123、True、
其中整型数据有:0100、&H123
单精度数据有: 100.0
双精度数据有:123D3、100#
字符型数据有:“ASDF”、”1234.5”
日期型数据有:#2006/6/1#
布尔型数据有:True
三、下列数据哪些是变量,哪些是常量?是什么类型的常量?
Name ”name” False ff ”11/16/99”
答:变量有:Name、ff、
常量有:”name”、 False、”11/16/99”
其中”name”、”11/16/99”是字符串型,False是布尔型
四、下列符号中,哪些可以是Visual Basic的合法变量名?
Sum33 x45_0 450_x Single XYZ False 答:上面合法的变量名有:Sum33、x45_0、XYZ。
五、把下列数学表达式写成Visual Basic表达式:
(1)
5
|
|z
y
x+
+(2)6)
1(xy
+
(3)xy y
x3
10+
答:(1)Abs(x+y)+z^5 (2) (1+x*y)^6 (3)(10*x+Sqr(3*y))/(x*y)
六、计算下列函数的值:
(1) Int(-3.14159) (2) Sqr(Sqr(81))
(3) Int(Abs(99-100)/2) (4) Sgn(7*3+2-10)
答:
(1) -4 (2) 3 (3) 0 (4) 1
七、写出下列表达式的值:
(1) (2^4+8*3 Mod 5)/2 (2) 4^3\7+8-(6>3 or 5<34 and 8<>7)
答:(1) 10 (2) 18
八、设X=8,Y=4,Z=5,求下列表达式的值(实数保留三位小数):
(1) X+4*Z (2) X^3/7
答:(1) 28 (2) 73.143
习题四,参考答案
4.1 略。
4.2 略。
4.3 略。
4.4 自由落体位移公式为:S=v0t+0.5gt2
其中v0为初速度,g为重力加速度,t为经历的时间,编写程序,求位移量S。设v0=5m/s,t=10s,g=9.8 m/s2,在程序中,把g定义为常量,用InputBox()函数输入v0、t两个变量,求位移量S。
【分析】v0为初速以及经历的时间t由InputBox函数输入,套用公式计算即可。
【源程序代码如下】
Private Sub Cmd1_Click()
Dim v0 As Single, t As Integer, s As Single
Const g As Single = 9.8
v0 = InputBox("请输入初速度:")
t = InputBox("请输入经历时间(秒):")
s = v0 * t + 0.5 * g * t ^ 2
Print "所经历的位移为:"; s; "米。"
End Sub
程序运行界面如图4.1所示。
图4.1 程序运行界面
4.5编写程序,用InputBox()函数输入四个整数,计算并输出这四个数的和及其平均值,把结果在窗体上显示出来。
【源程序代码如下】
Private Sub Cmd1_Click()
Dim a As Integer, b As Integer, c As Integer, d As Integer
Dim s As Integer, p As Single
a = Val(InputBox("请输入第一个整数:"))
b = Val(InputBox("请输入第二个整数:"))
c = Val(InputBox("请输入第三个整数:"))
d = Val(InputBox("请输入第四个整数:"))
s = a + b + c + d
p = s / 4
Print "和为:"; s, "平均值为:"; p
End Sub
4.6在窗体上画两个命令按钮,分别编写如下事件过程:
Private Sub Command1_Click()
a = InputBox("请输入第一个整数")
b = InputBox("请输入第二个整数")
Print a + b
End Sub
Private Sub Command2_Click()
a = Val(InputBox("请输入第一个整数"))
b = Val(InputBox("请输入第二个整数"))
Print a + b
End Sub
程序运行后,分别单击两个命令按钮,先后在两个输入对话框内分别输入456和123,输出结果是什么,为什么?
【分析】单击第1个按钮分别输入456和123后,输出的结果为456123。单击第2个按钮分别输入456和123后,输出的结果为579。原因是用InputBox函数输入的数为字符,通过第1个按钮事件输入后的两个数作为两个字符的连接(这里“+”为字符运算符),故输出为456123。而第2个按钮事件输入的字符经过Val函数,将字符转换为数字,故为两个数相加,结果为579。
4.7 编写程序,要求从文本框内输入三种商品的单价、购买数量,在标签上显示所用的总金额。
【分析】每种商品需要单价、购买数量两个文本框进行数据的输入,数据处理为一简单的赋值语句,数据的输出利用标签的标题(Caption)属性。
【源程序代码如下】
Private Sub Cmd1_Click()
Dim d1 As Single, s1 As Integer
Dim d2 As Single, s2 As Integer
Dim d3 As Single, s3 As Integer
Dim t As Single
d1 = Text1.Text
s1 = Text2.Text
d2 = Text3.Text
s2 = Text4.Text
d3 = Text5.Text
s3 = Text6.Text
t = d1 * s1 + d2 * s2 + d3 * s3