[计算机类试卷]国家二级VB机试(过程、多重窗体与环境应用)模拟试卷1及答案与解析.doc
《[计算机类试卷]国家二级VB机试(过程、多重窗体与环境应用)模拟试卷1及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级VB机试(过程、多重窗体与环境应用)模拟试卷1及答案与解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 VB机试(过程、多重窗体与环境应用)模拟试卷 1及答案与解析 一、选择题 1 以下叙述中错误的是 ( A)标准模块文件的扩展名是 bas ( B)标准模块文件是纯代码文件 ( C)在标准模块中声明的全局变量可以在整个工程中使用 ( D)在标准模块中不能定义过程 2 以下关于过程的叙述中,错误的是 ( A)在 Sub过程中不能再定义 Sub过程 ( B)事件过程也是 Sub过程 ( C)过程调用语句的形参个数必须与实参个数相同 ( D)函数过程一定有返回值 3 在窗体上画两个标签和一个命令按钮, 其名称分别为 Label1、 Label2和Command1,然后编写如下程序: Priv
2、ateSubfune(L As Labe1) Private Sub Command1_Click() L Caption=“1234“ a=Val(Label2 Caption) End Sub Call func(Label1) Private Sub Form_Load() Label2 Caption=a Label1 Caption=“ABCDE“ End Sub Label2 Caption=10 End Sub 程序运行后,单击命令按钮,则在两个标签中显示的内容分别为 ( A) ABCD和 10 ( B) 1234和 100 ( C) ABCD和 100 ( D) 1234和 1
3、0 4 编写如下程序: Private Sub Command1_Click() Dim str1 As String, str 2As String str1=InputBox(“输入一个字符串 “): subfstr1, str2: Print str2 End Sub Sub subf(s1 As String, s2 As String) Dim temp As String: Static i As Integer i=i+1 temp=Mid(s1, i, 1) If temp “Then subf s1, s2 s2=s2 & temp End Sub 程序运行后,单击命令按钮
4、Command1,且输入 “abcdef”,则输出结果为 ( A) atbecd, ( B) cdbeaf ( C) fedeba ( D) adbecf 5 在 VB中,函数过程与子程序过程的区别之一是 ( A)函数过程必须有参数,而子程序过程可以没有 ( B)函数过程的参数 传递只采用值传递,而子程序过程只采用地址传递 ( C)在程序中,子程序过程调用的代码可以写在表达式中,而函数过程不能 ( D)函数过程有返回值,而子程序过程没有 6 有下面程序代码: Private Sub Command1_Click() Dim a As String a=“COMPUTER“n=search(a,
5、 “T“): Print IIf(n=0, “未找到 “, n) End Sub Private Function search(str As String, ch As String)As Integer For k=1To Len(str) c=Mid(str, k, 1) If c=ch Then search=k: Exit Function End If Next k search=0 End Ftmetion 程序运行后,单击命令按钮 Command1,输出结果是 ( A) 0 ( B) 8 ( C) 6 ( D)未找到 7 假定有以下通用过程: Function Fun(n As
6、 Integer)As Integer x=n*n: Fun=x-11 End Function 在窗体上画一个命令按钮,其 名称为 Command1,然后编写如下事件过程: Private Sub Command1_Click() Dim i As Integer For i=1To2 y=Fun(i)Print y; Next i End Sub 程序运行后,单击命令按钮,在窗体上显示的内容是 ( A) 1 3 ( B) 10 8 ( C) -10 -7 ( D) 0 5 8 在窗体上画一个名称为 Command1的命令按钮,并编写如下程序: Function Fun(x) y=0 If
7、x 10Then y=x Else y=y+10 End If Fun=y End Function Private Sub Command1_Click() n=InputBox(“请输入一个数 “): n=Val(n) P=Fun(n): Print P 运行程序,单击命令按钮,将显示输入对话框,如果在对话框中输入 100,并单击“确定 ”按钮,则输出结果为 ( A) 10 ( B) 100 ( C) 110 ( D)出错信息 9 设有如下函数: Function DelSpace(ch As String)As Integer Dim n, st$, c$ st=“: n=0 For k
8、=1To Len(ch) C=Mid(ch, k, 1) If c “ “Then st=st&c Else n=n+1 End If Next k ch=st: DelSpace=n End Function 该函数的功能是 ( A)统计并返回字符串 ch中字符的个数 ( B)删除字符串 ch中的空格符,返回删除字符的个数 ( C)统计并返回字符串 ch中非空格字符数 ( D)删除字符串 ch中除空格符外的其他字符,返回删除字符的个数 10 设有下面程序代码: Private Sub Command1_Click() Dim str As String, ch As String str=“
9、Visual Basic Programming“: ch=“a“ n=fun(oh, sir): Print str,n End Sub Private Function fun(ch As String, str As String)As Integer Dim strbufAs String, c As String, n As Integer For k=1To Len(str) c=Mid$(str, k, 1) If c ch Then strbuf=strbuf & C Else strbuf=strbuf & UCase(c): n=n+1 End If Next k str=
10、strbuf: fun=n End Function 程序运行时的输出是 ( A) Visual Basic Programming0 ( B) VisuAl BAsic ProgrAmming3 ( C) Visul Bsic Progrmming3 ( D) VisualBasicProgramming2 11 以下关于过程及过程参数 的描述中,错误的是 ( A)调用过程时可以用控件名称作为实际参数 ( B)用数组作为过程的参数时,使用的是 “传地址 ”方式 ( C)只有函数过程能够将过程中处理的信息传回到调用的程序中 ( D)窗体 (Form)可以作为过程的参数 12 为了通过传值方式来
11、传送过程参数,存函数声明部分应使用的关键字为 ( A) Value ( B) ByVal ( C) -ByRef ( D) Reference 13 某人编写了下面的程序 Private Sub Command1_Click() Dim a As Integer, b As Integer a=InputBox(“请输入整数 “): b=InputBox(“请输入整数 “) pro a: pro b Call pro(a+b) End Sub Private Sub pro(n As Integer) While(n 0) Print n Mod 10; n=n 10 Wend Print E
12、nd Sub 此程序功能是:输入 2个正整数,反序输出这 2个数的每一位数字,再反序输出这2个数之和的每一位数字。例如:若输入 123和 234,则应该输出: 3 2 1 4 3 2 7 5 3但调试时发现只输出了前 2行 (即 2个数的反序 ),而未输出第 3行 (即 2个数之和的反序 ),程序需要修改。下面的修改方案中正确的是 ( A)把过程 pro的形式参数 n As Integer改为 ByVal n As Integer ( B)把 Call pro(a+b)改为 pro a+b ( C)把 n=n 10改为 n=n 10 ( D)在 pro b语句之后增加语句 c =a+b,再把
13、Call pro(a+b)改为 pro c 14 编写如下程序: Private Sub Command1_Click()Dim x As Integer x=10 Print fun1(x, 12)+x End Sub Private Function fun1(m As Integer, n As Integer)As Integer If n 10Then m=n fun1=m+n End Function 程序运行后,单击命令按钮 Command1,输出结果为 ( A) 30 ( B) 32 ( C) 34 ( D) 36 15 设有如下通用过程: Public Function f(
14、x As Integer) Dim y As Integer x=20: y=2: f=x*y End Function 在窗体上画一个命令按钮,其名称为 Command1,然后编写如下事件过程: Private Sub Command1_Click() Static x As Integer x=10: y=5: y=fix)Print x; y End Sub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是 ( A) 10 5 ( B) 20 40 ( C) 20 5 ( D) 10 40 16 编写如下程序: Private Sub Command1_Click() Dim x A
15、s Integer, y As Integer x=InputBox(“输入第一个数 “): y=InputBox(“输入第二个数 “) Call f(x, y) Print x, y End Sub Sub f(a As Integer, ByVal b As Integer) a=a*2: x=a+b: b=b+100 End Sub 程序运行后,单击命令按钮 Command1,并输入数值 10和 15,则输出结果为 ( A) 10 115 ( B) 20 115 ( C) 35 15 ( D) 20 15 17 窗体上 有一个名称为 Command1的命令按钮,一个名称为 Text1的文
16、本框。编写如下程序: Private Sub Command1_Click() Dim x As Integer x=Val(InputBox(“输入数据 “): Text1=Str(x+fun(x)+fun(x) End Sub Private Function fun(ByRef n As Integer) If n Mod3=0Then n=n+n Else n=n*n End If fun=n End Function 对于上述程序,以 下叙述中错误的是 ( A)语句 fun=n有错,因为 n是整型, fun没有定义类型 ( B)运行程序,输入值为 5时,文本框中显示 655 ( C)
17、运行程序,输入值为 6时,文本框中显示 42 ( D) ByRef表示参数按址传递 18 窗体上有一个名称为 Command1的命令按钮,其单击事件过程如下: Private Sub Command1_Click() Dim x As Integer, y As Integer Static z As Integer x=3: y=5: z=y Call f(x, y, z) Print x; y; z End Sub Private Sub f(ByVal a As Integer, ByRefb As Integer, c As Integer) a=a+a: b=b+b: c=c+c E
18、nd Sub 运行程序,单击命令按钮时, 3个标签中显示的内容分别是 ( A) 3 5 5 ( B) 3 5 10 ( C) 3 10 5 ( D) 3 10 10 19 设有如下程序: Private Sub Inv(ByVal xStr As String, yStr As String) Dim tStr As String Dim L As Integer L=Len(xStr) Do While L =1 tStr=tStr+Mid(xStr, L, 1): L=L-1 Loop yStr=tStr End Sub Private Sub Form_Click() Dim S1 As
19、 String, S2 As String S1=“abcdef“Inv S1 S2 Print S2 End Sub 运行程序,单击窗体,输出结果为 ( A) abcdef ( B) afbecd ( C) fedcba ( D) defabc 20 由高中数学可知,对于连续函数 f(x),若 f(x1)与 f(x2)值的符号相反,则在 x1和 x2之间必存在 x0,使得 f(x0)=0(该点称为 “零点 ”)。设有 VB函数: Private Function f(x As Single)As Single可以返回 fix)的值 (函数体没有给出 )。下面程序的功能是从键盘输入 2个实数
20、x1、 x2,判断在 x1、 x2之间是否存在零点。 Private Sub Command1_Click() Dim x1 As Single, x2 As Single x1=InputBox(“请输入一个实数 x1“) x2=InputBox(“请再输入一个实数 x2“) If(_)Then Print“在 “: x1; “与 “; x2; “之间存在零点 “ Else Print“不能确定在 ”; x1; “与 “; x2; “之间是否存在零点 “ End If End Sub Private Function f(x As Single)As Single End Function
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 VB 机试 过程 多重 窗体 环境 应用 模拟 答案 解析 DOC
