
西北农林拉大本科迎积老试试 200一2007年第2翔《庄设计基(B2》课程△卷 三四总分 得分 阅餐人 一、单项达排(每题2分,共知分,从个苍项中选出最佳答案在号内) 得分 1。装对文本瓶中输入每一个字符进行松验,最好使用文本瓶的(》事件 A.C1ickB、Change C.LostFocus D.KeyPress 2。在窗体上添加一个板架(ra1)再在板架(ae1)内添加三个标签 对象和三个文本框对象,在该应用程序共法及到〔)个对象。 67 B、8 D、2 3。在中,不能正确产生“”范内某个字符的表达式是() A.Chr (Int (Rnd*10+65)) B.Choose (Iat (Radt10+1)."A""B""C""D"") C.Mid("ABCDEFGHJI",INT (Rnd*10)+1,1) D、Str(Int(Rnd#10+85)》 4用orT0155e2”遇句控制的箭环,环体执行()次。 4.6 B、8 C、7 D、不定 5,下面标识符中,()可以作为B中合法的变量名。 42 B、st C,A 6,下面关于控件数组说法#误的是( 4、控件数组中所有元素,共用同一组事件过程 五、控件数组中通过Index属性来区分每个元 G,控件数组通过数组名只表示一个控件对象
《程序设计基础(VB)》A 卷 第1页 共 8页 得分 西北农林科技大学本科课程考试试卷 2006—2007 年第 2 学期《程序设计基础(VB)》课程 A 卷 题目 一 二 三 四 总分 得分 阅卷人 一、单项选择题(每题2分,共30分,从四个选项中选出最佳答案填在括号内) 1. 要对文本框中输入每一个字符进行检验,最好使用文本框的( )事件。 A、Click B、Change C、LostFocus D、KeyPress 2. 在窗体上添加一个框架(Frame1),再在框架(Frame1)内添加三个标签 对象和三个文本框对象,在该应用程序共涉及到( )个对象。 A、7 B、8 C、6 D、2 3. 在 VB 中,不能正确产生“A~J”范围内某个字符的表达式是( )。 A、Chr(Int(Rnd*10+65)) B、Choose(Int(Rnd*10+1),"A","B","C","D","E","F","G","H","I","J") C、Mid("ABCDEFGHJI",INT(Rnd*10)+1,1) D、Str(Int(Rnd*10+65)) 4. 用“For i=1 To 15 Step 2”语句控制的循环,循环体执行( )次。 A、6 B、8 C、7 D、不定 5. 下面标识符中,( )可以作为 VB 中合法的变量名。 A、2a B、stu C、A & b D、X^2 6. 下面关于控件数组说法错误的是( )。 A、控件数组中所有元素,共用同一组事件过程 B、控件数组中通过 Index 属性来区分每个元素 C、控件数组通过数组名只表示一个控件对象 D、一个控件数组中不能包括不同类型的控件

7。通过自定文数据类型 Private Type student 沿As String*8 Yy As Integer Gs As Integor As Boolean End Type Din a As student 定义的变量a所占学节数是《)半 A、21 B、22 C、37 D、湖 8.用ATy函数给组a赋时,下列()是正确的。 A.Din as() B.Dim a() a=Array("A,"c"") a=Array("A,"B"C"'D,"E) C、Dinato5励 a=Arry(A”,B”,C,"D°,"E) a=Array("A","B*,"C","D*,"E") 9,有如下程序 Sub sap(线 Din th x,y t-x:x-:y-t End Sub Private Suh Form_Click a=10:b=8 Call swap(a,b) Frint a,b 《序设计陆(VB)》A卷第2到共8
《程序设计基础(VB)》A 卷 第2页 共 8页 7. 通过自定义数据类型 Private Type student Xh As String * 8 Xm As String * 8 Yy As Integer Gs As Integer Sf As Boolean End Type Dim a As student 定义的变量 a 所占字节数是( )字节。 A、 21 B、22 C、37 D、38 8. 用 Array 函数给数组 a 赋值时,下列( )是正确的。 A、Dim a$() B、Dim a() a=Array("A","B","C","D","E") a=Array("A","B","C","D","E") C、Dim a(1 to 5) D、Dim a$(4) a=Array("A","B","C","D","E") a=Array("A","B","C","D","E") 9.有如下程序 Sub swap(x%, y%) Dim t%, x%, y% t = x: x = y: y = t End Sub Private Sub Form_Click() Dim a%, b% a = 10: b = 8 Call swap(a, b) Print a, b

End Sub 单击窗体后,程序运行结果为()。 A、8 10 D、10 ⊙ C、-8 h-10 D、编译错误对话框 10.近过0pen“student.txt”For0 tput As1语句打开的文件,知tt表示对文 件进行的操作是〔), A读 B.写 C.读/写 D.创建一个新文件 11.在窗体上画一个命令按,然后编写如下代码: Private Sub Comnandl_Click() din a as String b as String a=Inputbox(请输入第个数) b=Inputbox(请输入第二个数) print a+b End Sub 程序运行后,单击命令按钮,在两个对话框中先后输入12345和54321,程序的拾出结 果是() A、66666 0、5432112345 C、1234554321 D、出错 12,在窗体上面一个名称为Ccnd1的伦令核钮,然后编写如下事件过程: Private Sub Comandl_Click( Din a As Integer.As Integer 4=8:s=1 Da肠i1ea(=0 ss +a a=a-1 Loop Print s;a (程序设计基础(VB)》A参第3页共8页
《程序设计基础(VB)》A 卷 第3页 共 8页 End Sub 单击窗体后,程序运行结果为( )。 A、8 10 B、10 8 C、a=8 b=10 D、编译错误对话框 10. 通过 Open "student.txt" For Output As #1 语句打开的文件,Output 表示对文 件进行的操作是( )。 A. 读 B. 写 C. 读/写 D. 创建一个新文件 11.在窗体上画一个命令按,然后编写如下代码: Private Sub Command1_Click() dim a as String ,b as String a=Inputbox("请输入第一个数") b=Inputbox("请输入第二个数") print a+b End Sub 程序运行后,单击命令按钮,在两个对话框中先后输入 12345 和 54321,程序的输出结 果是( ) A、66666 B、5432112345 C、1234554321 D、出错 12.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim a As Integer, s As Integer a = 8 : s = 1 Do While a <= 0 s = s + a a = a - 1 Loop Print s; a

End Sub 程序运行后,单击命令按组,则窗体上显示的内容是() A、18 B、370 C、34D D、死循环 13.在窗体上面一个名称为Cand1的命令按钮,然后编写如下事件过程: Private Sub Comand1_Click() For n 1 To 20 If n Mod3◇0Then mm n\3 End If Next n Print n End Sub 程序运行后,如果单击命令按讯,则窗体上显示的内容是() A、15 B、18 C、20 D、21 14。不能正确描述逻短关系“a和h之一为零,但不能同时为零”的是(): Aa=0Anda◇b B.(a=00rb=0》Anda(>b C.a=0 Or b<>0 And a<>0 Or h=0 D.Abs (a-b)=a or Ahs (a-b)=h 15.在下面求两个数中较大数的程序段中,不正确的是〔): A.nax=IIf(x>y.x.y) B.If x>y Then max=x Else max=y C.nax=x D.If y>=x Then nax=y If y>x Then max=y DaX=X 二、写出程序运行结果《每小题4分,共20分:答案写在指定位置) 得分 1.Private Sub Cormandl Click() Din n As Integer,f As Integer,i As Integer f=1 n=3 (程序设计基础(V日》》A卷第4真共8页
《程序设计基础(VB)》A 卷 第4页 共 8页 得分 End Sub 程序运行后,单击命令按钮,则窗体上显示的内容是( ) A、1 8 B、37 0 C、34 0 D、死循环 13.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() For n = 1 To 20 If n Mod 3 <> 0 Then m = m + n \ 3 End If Next n Print n End Sub 程序运行后,如果单击命令按钮,则窗体上显示的内容是( ) A、15 B、18 C、20 D、21 14. 不能正确描述逻辑关系“a 和 b 之一为零,但不能同时为零”的是( ): A. a*b=0 And a<>b B. (a=0 Or b=0) And a<>b C. a=0 Or b<>0 And a<>0 Or b=0 D. Abs(a-b)=a or Abs(a-b)=b 15. 在下面求两个数中较大数的程序段中,不正确的是( ): A. max=IIf(x>y,x,y) B. If x>y Then max=x Else max=y C. max=x D. If y>=x Then max=y If y>x Then max=y max=x 二、写出程序运行结果(每小题 4 分,共 20 分。答案写在指定位置) 1. Private Sub Command1_Click() Dim n As Integer, f As Integer, i As Integer f = 1 n = 3

For i 1 To 6 n Step n I ff n Next 1 Print n.f End Sub 运行结果是: 2.Private Sub Comnandl Click() Din i For i "-3 To 3 Farj=Ahs(i)-3Ta3-A仙s(i》 Print Tab(10+j》:"g: Next j Next i End Sub 运行结果是: 3.Dim1宝ih紫a0 a=Array(1,2.3.-9.7,-5,4,-6 t=0 For i 0 To UBound(a) tt+a(i) Ift《a(i)Then Exit For Next i Print"t-“:t,"i-“:i End Sub 运行结果是: 4.Private Sub Comrnd1 click ( Din a&.h.c%.i%,sun a-1 b=1 (程序设计其础(VB》》A香第5页共8页
《程序设计基础(VB)》A 卷 第5页 共 8页 For i = 1 To 6 + n Step n + 1 f = f + n Next i Print n, f End Sub 运行结果是:________________ 2. Private Sub Command1_Click() Dim i%, j% For i = -3 To 3 For j = Abs(i) - 3 To 3 - Abs(i) Print Tab(10 + j); "*"; Next j Next i End Sub 运行结果是:__________________ 3.Dim t%, i%, h%, a() a = Array(1, 2, 3, -9, 7, -5, 4, -6) t = 0 For i = 0 To UBound(a) t = t + a(i) If t < a(i) Then Exit For Next i Print "t ="; t, "i="; i End Sub 运行结果是:_______________ 4.Private Sub Command1_Click() Dim a%, b%, c%, i%, sum% a = 1 b = 1

5Im■鞋十b For i 1 To 4 c a tb sun sum t c n■h h■c Next i Print sum End Sub 运行结果是: 5.下面程序运行后,在文木框Text】中输入“Ny heart will0on”后回车: Private Sub Textl_KeyPress(KeyAscii As Integer) If KeyAscii 13 Then Din x As String.s0 As String.s1 As String x Text1.Text If Len(x)=15 Then s0 "Yes" Print "SO Else s1="N” Print“s1 End If End If End Sub 运行结果是: 三、完普程序(每空2分,共14分,》 得分 1,当单击命令按钮时,先输入一个十进制数,转换并输出对应的十六进制 数。 (程序设计基础(VB)》A参第6页共8页
《程序设计基础(VB)》A 卷 第6页 共 8页 得分 sum = a + b For i = 1 To 4 c = a + b sum = sum + c a = b b = c Next i Print sum End Sub 运行结果是:________________ 5.下面程序运行后,在文本框 Text1 中输入“My heart will go on”后回车: Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Dim x As String, s0 As String, s1 As String x = Text1.Text If Len(x) = 15 Then s0 = "Yes" Print "S0" Else s1 = "No" Print "S1" End If End If End Sub 运行结果是: 三、完善程序(每空 2 分,共 14 分。) 1.当单击命令按钮时,先输入一个十进制数,转换并输出对应的十六进制 数

Private Sub Comandl Click() Din m As Integer m=Val(InputBox(“请输入一个整数)】 Print”进制数”表m表“对应的十六进制数为”是dox( End Sub Function dtox (ByVal x As Integer)As String Din s As String.y As String.n As Integer 9= y=甲m ohi1ex◇0 n“ y=id(s,n+1,1)&y Loop End Function 2.以下程序中函数5用于求两个数的最大公的数,调用该函数求从键盘上输入的三 个数的最大公约数(求三个数的最大公约数方法是,先求两个数的最大公约数,然后将这 个公钓数与第三个数冉求最大公钓数即可). Private Sub comnandl_Click() Din at,b&.ck a=Val(InputBox(“请输入第·个数) b=Val(InputBox(请输入第二个数")) e-Val(InputBox(请输入第三个数)】 s2Box“这三个数的最大公约数为:”& Fnd Sub (程序设计基础(V日》》A卷第T页共8页
《程序设计基础(VB)》A 卷 第7页 共 8页 Private Sub Command1_Click() Dim m As Integer m = Val(InputBox("请输入一个整数")) Print "十进制数" & m & "对应的十六进制数为" & dtox(m) End Sub Function dtox(ByVal x As Integer) As String Dim s As String, y As String, n As Integer s = y = "" Do While x <> 0 n = y = Mid(s, n + 1, 1) & y Loop End Function 2.以下程序中函数 gys 用于求两个数的最大公约数,调用该函数求从键盘上输入的三 个数的最大公约数(求三个数的最大公约数方法是,先求两个数的最大公约数,然后将这 个公约数与第三个数再求最大公约数即可)。 Private Sub command1_Click() Dim a%, b%, c% a = Val(InputBox("请输入第一个数")) b = Val(InputBox("请输入第二个数")) c = Val(InputBox("请输入第三个数")) MsgBox "这三个数的最大公约数为:" & End Sub

Function gys(ByVal m,n%)As Integer Din r As Integer Do r日 If r 0 Then Exit Do m=n n=r Loop End Function 四、按要求完成以下程序(共6分,答案按题号顺序写在第4小题之后及 得分 附页上) 1.求100-200之间的所有素数,按每行10个输出〔10分) 2.编程求5!471+10!(8分) 3.有一个MXW知阵,M由谜牡输入,数据随机产生,笔围在1099之间,求四周各元 素之和。(8分) 4.随机产生0个4位整数,按由小到大顺序排序后存入C盘根目录下的顺序文料 fi1etxL中.(10分) (程序设计其础(VB》》A香第8页共8页
《程序设计基础(VB)》A 卷 第8页 共 8页 得分 Function gys(ByVal m%, n%) As Integer Dim r As Integer Do r = If r = 0 Then Exit Do m = n n = r Loop End Function 四、按要求完成以下程序(共 36 分,答案按题号顺序写在第 4 小题之后及 附页上) 1.求 100~200 之间的所有素数,按每行 10 个输出(10 分) 2.编程求 5!+7!+10!(8 分) 3.有一个 M×M 矩阵,M 由键盘输入,数据随机产生,范围在 10-99 之间,求四周各元 素之和。(8 分) 4.随机产生 200 个 4 位整数,按由小到大顺序排序后存入 C 盘根目录下的顺序文件 file.txt 中。(10 分)