文档库 最新最全的文档下载
当前位置:文档库 › 第2章习题答案

第2章习题答案

第2章习题答案
第2章习题答案

第2章课外练习参考答案

一、判断题

1.窗体是一个容器,可以容纳其它控件,但窗体不能像控件一样接收事件( ×)。

2.界面对象的Top、Left属性,是指对象左上角相对于上级容器的坐标( √)。

3.设置好窗体字体属性后再向窗体中添加控件,则控件的默认字体属性与窗体相同( √)。

4.对象的属性实质上就是变量( √)。

5.函数Val ("2a")的返回值为2 ( √)。

6.标签对象的Caption属性值为字符串型,运行时可以被重新赋值( √)。

7.使用窗体对象的Cls方法可以清除窗体中标签的Caption(×)。

8.属性、方法和事件都是对象的成员(×)。

9.事件只能由用户的鼠标或键盘动作触发产生(×)。

10.清除文本框的内容可以用文本框的Cls方法(×)。

11.VB的窗体与不同类型的控件都有各自不同的事件集(√)。

12.工程文件的扩展名是. frm(×)。

13.整型变量有Byte、Integer、Long 3种类型(√)。

14.Byte类型的数据,其数值范围在-255~255之间(×)。

15.Double类型数据可以精确表示其数值范围内的所有实数(√)。

16.在逻辑运算符Not、Or、And中,运算优先级由高到低依次为Not、Or、And(×)。

17.关系表达式是用来比较两个数据的大小关系的,结果为逻辑值(√)。

18.一个表达式中若有多种运算,在同一层括号内,计算机按函数运算→逻辑运算→关系运算→算术运算的顺序对表达式求值(×)。

19.赋值语句的功能是,计算出表达式值并转换为相应类型数据后,再为变量或控件的属性赋值(√)。

20.用Dim关键字声明数值型变量时,该数值型变量自动被赋初值为0(√)。

21.若行If语句中逻辑表达式值为True,则关键字Then后的若干语句都要执行(×)。

22.在行If语句中,关键字End If是必不可少的(×)。

23.块If结构中的Else子句可以缺省(√)。

24.使用On Error GoTo语句并编写相应程序,可以捕获程序中的编译错误(×)。

二、选择题

1.Integer类型数据能够表示的最大整数为D。

A、275

B、215-1

C、216

D、216-1

2.货币类型数据小数点后面的有效位数最多只有B。

A、1位

B、6位

C、16位

D、4位

3.输入对话框InputBox的返回值的类型是A。

A、字符串

B、整数

C、浮点数

D、长整数

4.运算符“\”两边的操作数若类型不同,则先C再运算。

A、取整为Byte类型

B、取整为Integer类型

C、四舍五入为整型

D、四舍五入为Byte类型

5.下列程序段的输出结果是B。

a=10: b=10000: x=log(b)/log(a): Print "lg(10000)="; x

A 、lg(10000)=5

B 、lg(10000)=4

C 、4

D 、5

6. Print 语句的一个输出表达式为 D ,则输出包括日期、时间信息。

A 、Date

B 、Month

C 、Time

D 、Now

7. 语句Print "5*5" 的显示结果是 B 。

A 、25

B 、"5*5"

C 、5*5

D 、出现错误提示

8. 语句“Form1.Print Tab(10); "#"”的作用是在窗体当前行 A 。

A 、第10列输出字符“#”

B 、第9列输出字符“#”

C 、第11列输出字符“#”

D 、输出10个字符“#”

三、填空题

1. 语句“Dim C As String ”定义的变量C ,可用于存放控件的Caption 的值。

2. 长整型变量(Long 类型)占用 4 个字节。

3. 表达式2 * 4^3 + 4 * 6 / 3 + 3^2的值是 145 。

4. 表达式16 / 2 - 2 ^ 3 * 7 Mod 9的值是 6 。

5. 表达式81 \ 7 Mod 2 ^ 2的值是 3 。

6. 语句Print Not 10>15 And 8<5+2的输出结果为 False 。

7. 设x 为一个两位数,将其个位和十位数交换后所得两位数的VB 表达式是 (x mod

10)*10+x\10 。

8. 求a 与b 之积除以c 的余数,用VB 表达式可表示为 a*b Mod c 。

9. 声明单精度常量PI 代表3.1415926的语句是 Dim PI As Single =3.1415926 。

10. #20/5/01#表示 日期 类型常量。

11. 将数学式b 改写成VB 表达式ac 42? b^2 - 4*a*c 。

12. 将数学式 (x+1) e 2x 改写成VB 表达式 (x+1)*e ^ (2*x) 。

13. 将数学分式x x x 21

122?+?写成VB 表达式 (x^2-1) / (x^2+1) – 2*x 。 14. 设x=5,y=3,求x>3 And xy 的值是 True 。

15. 设A=5,B=6,C=7,D=8,计算表达式3>2*B OR A=C AND B<>C OR C>D 的值是 False 。

16. 判断整型变量n 是否为两位正整数的逻辑表达式是 n>9 And n<100 。

17. 关系表达式的运算结果是什么类型的值? 布尔

18. 两个数值型数据如果使用“+”运算符进行拼接,会出现什么结果? 两数相加

19. 若x >y ,则交换变量x 、y 值的行If 语句写作 If x>y then t=x : x=y : y=t 。

四、程序设计题

1. 编程求下列分段函数的值。要求双击窗体时弹出输入对话框,输入x 并确定后,计算函数的值,然后将输入的数据和计算的结果辅以简明的说明文本,用消息对话框输出。

???>+≤+=3)3(31)(4/1x x x x x f 解:

Private Sub Form_DblClick()

Dim x As Single, y As Single

x = InputBox("请输入x")

If x <=3 Then

y =1 + x

Else

y = (x + 3) ^ (1 / 4)

End If

MsgBox y

End Sub

2.在窗体右上角添加一个文本框和一个命令按钮。当用户在文本框中输入密码并单击命令按钮后,判断输入的密码是否为“123”,如果不是,就弹出对话框提示“密码不正确!请重新输入”,并将焦点定位在文本框上同时选中所有文本;若输入的密码正确,则在窗体中央打印出“欢迎光临!”字样,要求字体为隶书、字号48、加粗。(提示:要使输入文本框的密码字符不以明码出现,可以将文本框的PasswordChar属性设置为星号“*”即可。)

解:

Private Sub Command1_Click()

If Text1.Text ="123" Then

Dim S As String

S = "欢迎光临!"

FontName = "隶书"

FontSize =48

FontBold = True

CurrentX = (ScaleWidth - TextWidth(S)) / 2

CurrentY = (ScaleHeight - TextHeight(S)) / 2

Print S

Else

MsgBox "密码不正确,请重新输入。"

Text1.SetFocus

Text1.SelStart =0

Text1.SelLength =Len(Text1.Text)

End If

End Sub

3.编程,在文本框中输入一个三位整数,单击按钮后,将这个3位数颠倒,输出到标签中。

解:

Private Sub Command1_Click()

Dim Num As Integer

Num =Text1.Text

Label1.Caption = (Num Mod 10) * 100 + (Num \ 10 Mod 10) * 10 + Num \ 100

End Sub

4.创建一个空白窗体,程序启动时,窗体出现在桌面左上角,单击窗体时,窗体会自动移到桌面右下角,再次单击时,窗体又自动移回到桌面左上角。

解:

Private Sub Form_Load()

Form1.Left =0

Form1.Top =0

End Sub

Private Sub Form_Click()

If Form1.Left =0 Then

Form1.Left =Screen.Width - Form1.Width

Form1.Top =Screen.Height - Form1.Height

Else

Form1.Left =0

Form1.Top =0

End If

End Sub

5.编程,输入圆的半径,计算并输出圆的面积,按下列要求分别实现:

(1)添加一个文本框控件用于输入,单击命令按钮后通过标签控件显示计算结果。

(2)修改界面和程序:单击命令按钮后,调用Inputbox函数输入数据,通过标签控件显示计算结果。

(3)要求计算结果具有15位有效位。

解:

(1)

Private Sub Command1_Click()

Const PI As Single =3.141593

Dim R As Single

R =Text1.Text

Label1.Caption = 2 * PI * R ^ 2

End Sub

(2)

Private Sub Command1_Click()

Const PI As Single =3.141593

Dim R As Single

R =InputBox("请输入圆半径:")

Label1.Caption = 2 * PI * R ^ 2

End Sub

(3)

Private Sub Command1_Click()

Const PI As Single =3.141593

Dim R As Double

R =InputBox("请输入圆半径:")

Label1.Caption = 2 * PI * R ^ 2

End Sub

相关文档