1、VB练习题1在代码中引用一个控件时,应使用控件的( b )属性。 ACaption BName CText DIndex2设变量x = 4,y = -1,a = 7,b = -8,下面表达式( a )的值为“假”。 Ax+a 0 AND y y D x+y a+b AND NOT (y b = c AND a = d的值为 。6要使标签的大小自动与所显示的文本相适应,可以通过设置 属性为True来实现。7若要在一行书写多条语句,则各语句间应加分隔符,Visual Basic的语句分隔符为 。8要强制显式声明变量,使用_语句完成。9在VB中,用户定义常量使用 语句,声明变量使用 语句。三、将下列
2、数学表达式转换为VB表达式。(6分)1a2+2ab+b2 _2 _38exln10 _42sin(450)cos(450) _5 _6 _四、判断题,正确打“”,错误打“”(10分)1在VB中,控件的事件只能通过用户的操作触发。( )2字符型数据以双引号作为定界符,输出时双引号本身不会显示在屏幕上。( )3保存工程时,窗体文件和工程文件的文件名不能相同。( )4改变控件的大小,可以使用鼠标和键盘,还可以通过修改代码。( )5同一过程中,数组和简单变量可以同名。( )6VB函数中的参数可以是常量、变量、表达式,还可以是另一个函数。( )7代码Const Number1=15:Number1=10
3、合法。( )8允许将块If-Then语句结构中的所有语句都写在一行上( )9定义数组语句Dim a(b) As Integer 是正确的( )10在过程调用中,“实参表”和“形参表”中对应的变量名不必相同,但是变量的个数必须相等,而且实际参数的类型必须与相应形式参数的类型相符。( )五、根据题意,将下列程序补充完整。(16分)1 产生20个10,100 之间的随机整数,每行输出10个数据。Private Sub command1_click() Dim a(1 To 20) As Integer Randomize i = 0 Do While i 10 Then Print a(i); Lo
4、opEnd Sub2打印九九乘法表Private Sub command1_click() For i = 1 To 9 For j = 1 To 9 Print ( ) Next j Print ( )End Sub3判断一个数是否素数Private Sub command1_click() x = InputBox(请输入一个整数) flag = 1 For i = 2 To ( ) If x Mod i = 0 Then flag = 0 End If Next i If ( )Then Print x; 是素数 Else Print x; 不是素数End Sub4利用数组输出Fibon
5、acci数列的前15项。 该数列的第1项和第2项为1,其余各项均为其前两项之和。Private Sub Command1_Click()( ) f(1) = 1 : f(2) = 1 List1.AddItem f(1) : List1.AddItem f(2) For i = 3 To 15f(i) = ( ) List1.AddItem f(i) Next iEnd Sub六、写出下面程序的输出结果。(每题3分,共18分)1 Private Sub command1_click() x = InputBox(enter x) x 的输入值为-8 Select Case Sgn(x) + 2
6、 Case 1 Print y=; x 2 + 1 Case 2 Print y=; x - 4 Case 3 Print y=; x 3 + 100 End SelectEnd Sub2 Private Sub command1_click() Dim a, b, c, d, e As String a = Zheng Zhou b = Zhong Yuan Gong Xue Yuan c = a + + b d = Left(a, 1) + Mid(a, 7, 1) e = Left(b, 1) + Mid(b, 12, 1) Print c Print d; e End Sub3设有Su
7、b过程:Private Sub p1(x As Integer, ByVal y As Integer) x = 4 :y = 5 :z = 6End Sub则如下程序段的运行结果是:Private Sub Command1_Click() Dim x As Integer, y As Integer x = 1: y = 2: z = 3 Print x, y, z Call p1(x, y) Print x, y, zEnd Sub4 Private Sub command1_click() k = 0 For i = 1 To 3 k = k + 1 a = i * i * k Prin
8、t a; Next iEnd Sub5 Private Sub command1_click() Dim a(5, 5) As Integer For i = 1 To 5 For j = 1 To 5 a(i, j) = i * 2 + j Print a(i, j); Next j Print Next iEnd Sub6设有Function过程:Private Function f1(b, a) a = a * a: b = b * b f1 = a - bEnd Function 则如下程序段的运行结果是什么?Private Sub command1_click() a = 4: b
9、= 3 a = f1(a, b) Print aEnd Sub七编程题(共30分)注意:艺术类学生(环艺、装潢、表演、服设)做第1、2、5、6小题; 其他学生做 第1、2、3、4 小题。1给出一个百分制的成绩,要求输出成绩的相应等级。(7分) 90分以上为“A”,8089分为“B”,7079分为“C”,6069分为“D”,60分以下为“E”。2求n!,n由键盘输入。(7分)3产生20个 0,99 之间的随机整数,并按从小到大的顺序输出。(8分)4产生并输出一个66的二维数组A:(8分)(1)两条对角线上元素的值为1,其余元素为小于30的随机整数。(2)计算各行元素的平均值,输出平均值最大和平均
10、值最小的行号。5输出1+2+100的和,并求出1100 之间能被17整除的数据的个数(8分)6从键盘输入10个数,求出其中的最大数,最小数和平均值。(8分)VB试题答案及评分标准一、 单项选择题(每题1分,共10分)1B 2A 3C 4C 5D6D 7A 8B 9D 10B二、 填空题(每空1分,共10分)1n Mod 13=0 And n Mod 17=01、 对象3LEFT(“Visual Basic 6.0”,6)465False6Autosize7 : 8Option Explict 9Const Dim三、 将下列数学表达式转换成VB表达式(每题1分,共6分)1、 a2+2*a*b+
11、b22、 x(1/3)*y(1/4)3、 8*exp(x)*log(10)4、 2*sin(3.1416/4)*cos(3.1416/4)5、 (x+y+z)/sqr(x2+y2+z2)6、 log(1+abs(a+b)/(a-b)四、 判断题(每题1分,共10分)1 2 3 4 56 7 8 9 10五、 根据题意,将下列程序补充完整(每空1分,共10分)1(1) int(rnd*91)+10 (2) I102(1) i*j (2) next i3(1)int(sqr(x)或者x-1 (2) flag=1 4(1)dim f(15) as integer (2)f(I-1)+f(I-2)六、
12、 写出下面程序的输出结果(每题4分,共24分)1、 y=652、 Zheng Zhou Zhong Yuan Gong Xue Yuan 2分ZZZG 2分31 2 3 4 2 341 8 2753 4 5 6 7 5 6 7 8 9 7 8 9 10 119 10 11 12 1311 12 13 14 156-7七、 编写程序1. private sub command1_click() dim x as integer,grade as string 1分 x=text1.text 1分 select case x 4分 case 90 to 100 grade=”A” case 80
13、to 89 grade=”B” case 70 to 79 grade=”C” case 60 to 69 grade=”D” case is a(j) Then t = a(i): a(i) = a(j): a(j) = t End If Next j Next i For i = 1 To 20 2分 Print a(i); Next iEnd Sub4 Private Sub Command1_Click()Dim a(1 To 6, 1 To 6) As Integer 1分Dim aver As SingleRandomizeFor i = 1 To 6 3分 For j = 1 T
14、o 6 If i = j Or i + j = 7 Then a(i, j) = 1 Else a(i, j) = Int(Rnd * 30) End If Print a(i, j); Next j PrintNext iPrintMax = 0: Min = 30 4分For i = 1 To 6 s = 0 For j = 1 To 6 s = s + a(i, j) Next j aver = s / 6 If aver Max Then Max = aver: row_max = I If aver Max Then Max = x If x Min Then Min = x Next i Print s / 10 1分 Print Max, Min 1分End Sub
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2