当前位置:文档之家› 第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、275B、215-1C、216D、216-12.货币类型数据小数点后面的有效位数最多只有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)="; xA 、lg(10000)=5B 、lg(10000)=4C 、4D 、56. Print 语句的一个输出表达式为 D ,则输出包括日期、时间信息。

A 、DateB 、MonthC 、TimeD 、Now7. 语句Print "5*5" 的显示结果是 B 。

A 、25B 、"5*5"C 、5*5D 、出现错误提示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 mod10)*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 21122−+−写成VB 表达式 (x^2-1) / (x^2+1) – 2*x 。

14. 设x=5,y=3,求x>3 And x<y Or x<>y 的值是 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 Singlex = InputBox("请输入x")If x <=3 Theny =1 + xElsey = (x + 3) ^ (1 / 4)End IfMsgBox yEnd Sub2.在窗体右上角添加一个文本框和一个命令按钮。

当用户在文本框中输入密码并单击命令按钮后,判断输入的密码是否为“123”,如果不是,就弹出对话框提示“密码不正确!请重新输入”,并将焦点定位在文本框上同时选中所有文本;若输入的密码正确,则在窗体中央打印出“欢迎光临!”字样,要求字体为隶书、字号48、加粗。

(提示:要使输入文本框的密码字符不以明码出现,可以将文本框的PasswordChar属性设置为星号“*”即可。

)解:Private Sub Command1_Click()If Text1.Text ="123" ThenDim S As StringS = "欢迎光临!"FontName = "隶书"FontSize =48FontBold = TrueCurrentX = (ScaleWidth - TextWidth(S)) / 2CurrentY = (ScaleHeight - TextHeight(S)) / 2Print SElseMsgBox "密码不正确,请重新输入。

"Text1.SetFocusText1.SelStart =0Text1.SelLength =Len(Text1.Text)End IfEnd Sub3.编程,在文本框中输入一个三位整数,单击按钮后,将这个3位数颠倒,输出到标签中。

解:Private Sub Command1_Click()Dim Num As IntegerNum =Text1.TextLabel1.Caption = (Num Mod 10) * 100 + (Num \ 10 Mod 10) * 10 + Num \ 100End Sub4.创建一个空白窗体,程序启动时,窗体出现在桌面左上角,单击窗体时,窗体会自动移到桌面右下角,再次单击时,窗体又自动移回到桌面左上角。

解:Private Sub Form_Load()Form1.Left =0Form1.Top =0End SubPrivate Sub Form_Click()If Form1.Left =0 ThenForm1.Left =Screen.Width - Form1.WidthForm1.Top =Screen.Height - Form1.HeightElseForm1.Left =0Form1.Top =0End IfEnd Sub5.编程,输入圆的半径,计算并输出圆的面积,按下列要求分别实现:(1)添加一个文本框控件用于输入,单击命令按钮后通过标签控件显示计算结果。

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

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

解:(1)Private Sub Command1_Click()Const PI As Single =3.141593Dim R As SingleR =Text1.TextLabel1.Caption = 2 * PI * R ^ 2End Sub(2)Private Sub Command1_Click()Const PI As Single =3.141593Dim R As SingleR =InputBox("请输入圆半径:")Label1.Caption = 2 * PI * R ^ 2End Sub(3)Private Sub Command1_Click()Const PI As Single =3.141593Dim R As DoubleR =InputBox("请输入圆半径:")Label1.Caption = 2 * PI * R ^ 2End Sub。

相关主题