a = 10: b = 3 Print b = a * b End Sub
19. 下列程序的功能是:当x<50时,y=0.8x;当50≤x≤100时,y=0.7x; 当x>100时,没有意义。请填空。
Private Sub Command1_Click() Dim k As Single
n = Val(InputBox(\请输入x的值!\ ○36
Case Is < 50 y = 0.8 * x Case 50 To 100 y = 0.7 * x ○37
Print \输入的数据出界!\ End Select Print x, y End Sub
20. 设有如下程序:
Private Sub Form_Click()
Dim a As Integer, s As Integer n = 8 s = 0 Do
s = s + n n = n - 1 Loop While n > 0 Print s End Sub
以上程序的功能是 ○38 ,程序运行后,单击窗体,输出结果为 ○39 。
三 编程题
1.斐波纳契数列(Fibonacci Sequence),又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、??。编程计算斐波纳契数列前n项之和
2. 编程找出999以内的所有素数,并按每6个一行的格式输出。 3. 编程将一个十进制整数转换成相应的二进制数。 4.编程求出班级某门课考试成绩的平均分。(要求:人数不定,成绩由键盘输出,当输入-1 时结束)
5.编程求两个自然数m 和n 的最大公约数DYS和最小公倍数XBS。
6.编程实现:给定一个正整数,将此数据的每一位数字按逆序方式重新组建一个数显示出来。
7.编程找出随机产生的K个两位数正整数中的最大和最小的一个数,并指出最大和最小数的序号。
8.编程将任意输入的把进制数转换成相应的十进制数。
9.编写程序,输入正整数N,求最大的K,使1×1+2×2+3×3+?+K×K (提示:本题是累加问题,不知道累加的次数,用循环求累加和,直到累加和大于N,退出循环,最终所求得值是K-1) 10. 编程 求 ,直到最后一项小于10 -6。 第4章 习题 一 填空题 1. 控件数组中的每一个控件都有惟一的下标,下标值由 属性指定。 2. 数组元素个数可以改变的数组称为 。 3. 数组元素可以存放不同类型数据的数组称为 。 4. 数组的erase语句用于 。 5. 如果数组元素的下标值为实数,则VB系统会按 进行处理。 6. 控件数组是由一组类型和 都相同的控件组成。 7. 控件数组中所有控件的事件过程是 的。 8. 控件数组中的第一个控件的index 值为 。 9. 在使用动态数组时,要改变数组的大小又不丢失数组中的数据,可使用具有 关键字的ReDim语句。 10. 一组具有相同类型和名称、不同下标的变量的集合称为 。 二 选择题 1. 下列一维数组说明语句错误的是( )。 (A)Dim b(100) AS Double (B)Dim b(-5 To 0) AS Byte (C)Dim b(5 To 5) AS String (D)Dim b(-10 To –20) AS Integer 2. 已知有数组声明:Dim a(-1 To 3,2 To 5) As Integer,如下引用数组中的元素,正确的是( )。 (A)a(-1,2) (B)a(4) (C)a[-1,2] (D)a(0,6) 3. 若有数组说明语句为:Dim a(-3 To 8), 则数组a包含元素的个数是( )。 (A)5 (B)8 (C) 11 (D)12 4. 窗体上有一个命令按钮,命令按钮的单击事件过程如下。运行程序后,单击命令按钮,输出结果是( ) 。 Private Sub Command1_Click() Dim a a=Array(1,2,3,4,5) For k=1 To 4 s=s+a(k) Next Print S End Sub (A) 10 (B) 14 (C)15 (D) 120 5. 设有数组说明语句:Dim c(1 To 10),i=4,则下面表示数组c的元素选项中( )是错误的。 (A)c(i-1) (B)c(5+0.5) (C)c(0) (D)c(10) 6. 若在某窗体模块中有如下事件过程: Private Sub Command1_Click(Index As Integer) ?? End Sub 则以下叙述中正确的是( )。 (A)此事件过程与不带参数的事件过程没有区别 (B)有一个名称为Command1的窗体,单击此窗体则执行此事件过程 (C)有一个名称为Command1的控件数组,数组中有多个不同类型控件 (D)有一个名称为Command1的控件数组,数组中有多个相同类型控件 7. 阅读程序: Private Sub Command1_Click() Dim arr Dim i As Integer arr=Array(0,1,2,3,4,5,6,7,8,9,10) For i=0 To 2 Print arr(7-i); Next End Sub 程序运行后,窗体上显示的是( )。 (A)8 7 6 (B)7 6 5 (C)6 5 4 (D)5 4 3 8. 下面选项中,错误的是( )。 (A)Dim s As variant :s = Array(\(B)Dim b :b=Array(1,2,3) (C)Dim b As Integer :b=Array(1,2,3) (D)Dim b As variant :b=Array(1,2,3) 9. 设有数组说明语句:Dim b(-1To2,-2To2),则数组b中元素的个数是( (A) 12 (B)15 (C) 16 (D)20 10. 在窗体上画一个命令按钮,其名称为Commandl,然后编写如下代码: Option Base 1 )。 Private Sub Command1_Click() Dim a a=Array(1,2,3,4) j=1 For i=4 To 1 Step -1 s=s+a(i)*j j=j*10 Next i Print s End Sub 程序运行后,单击命令按钮,其输出结果是( )。 (A)4321 (B)1234 (C)34 (D)12 11. 若有数组说明语句:Dim a( ) AS Integer,则a被定义为( )。 (A)定长数组 (B)可调数组 (C)静态数组 (D)可变类型数组 12. 下面正确使用动态数组的是( )。 (A)Dim arr(30) As Integer ? ReDim arr(10) (B)Dim arr() ? ReDim arr(30) As Integer (C)Dim arr() As Integer ? ReDim arr(30) As String (D)Dim arr() As Integer ? ReDim arr(3,6) 13. 定义有5个整数型元素的数组,正确的语句是( )。 (A)Dim a(4) As Integer (B)Option Base 1:Dim a(5) (C)Dim a&(5) (D)Dim a(5) As Integer 14. 语句Dim a(-2 To 3,2 To 6)As Integer定义的数组的元素个数是( )。 (A)20 (B)25 (C)30 (D)36 15. 若有数组说明语句:Dim t(1 To 10)AS Variant,则t被定义为( )。 (A)数值数组 (B)可调数组 (C)字符串数组 (D)可变类型数组 16. 在窗体上画一个名为Command1的命令按钮,然后编写如下代码: Option Base 1 Private Sub Command1_Click() Dim a a=Array(4,3,2,1) j=1 For i=3 To 1 Step-1 s=s+a(i)*j : j=j*10 Next i Print s End Sub 运行上面的程序,其输出结果是( )。 (A)1234 (B)234 (C)4321 (D) 432 17. 以下数组定义语句中,错误的是( )。 (A)Dim arr(-5) As Integer (B)Static arr(5) (C) Dim arr(2,1 To 3) (D)Dim arr(0 To 2,1 To 3)As Integer 18. 默认情况下,下面声明的数组的元素个数是( )。 Dim a(4,-1 To 2) (A)20 (B)24 (C)25 (D)30 19. 下面正确使用动态数组的是( )。 (A)Dim art() As Integer ? ReDim arr(3,5) (B)Dim arr() As Integer ? ReDim arr(50) As String (C)Dim arr() ? ReDim arr(50) As Integer (D)Dim arr(50) As Integer ? ReDim arr(20) 20. 设有如下程序: Private Sub Form_Click() Dim ary(1 To 5)As Integer Dim i As Integer Dim sum As Integer For i=1 To 5 ary(i)=i+1 sum=sum+ary(i) Next i Print sum