机密★启用前 2007年4月全国计算机等级考试二级笔试试卷 Visual basic语言程序设计 26 注意事项 考生应严格遵守考场规则,得到监考人员指令后方可作答。 、考生拿到试卷后应首先将自己的姓名、准考证号等内容涂写在答题卡的相应位置上。 、选择题答案必须用铅笔填涂在答题卡的相应位置上,填空题的答案必须用蓝、黑色钢 笔或圆珠笔写在答题卡的相应位置上,答案写在试卷上无效。 四、注意字迹清楚,保持卷面整洁 五、考试结束将试卷和答题卡放在桌上,不得带走。待监考人员收毕清点后,方可离场 ***版权所有,任何单位或个人不得保留、复制和出版,违者必究*** 教育部考试中心 0七年二月制
机密★启用前 2007 年 4 月全国计算机等级考试二级笔试试卷 Visual Basic 语言程序设计 26 注意事项 一、考生应严格遵守考场规则,得到监考人员指令后方可作答。 二、考生拿到试卷后应首先将自己的姓名、准考证号等内容涂写在答题卡的相应位置上。 三、选择题答案必须用铅笔填涂在答题卡的相应位置上,填空题的答案必须用蓝、黑色钢 笔或圆珠笔写在答题卡的相应位置上,答案写在试卷上无效。 四、注意字迹清楚,保持卷面整洁。 五、考试结束将试卷和答题卡放在桌上,不得带走。待监考人员收毕清点后,方可离场。 * * * 版权所有,任何单位或个人不得保留、复制和出版,违者必究 * * * 教育部考试中心 二 00 七年二月制
2007年4月全国计算机等级考试二级笔试试卷 公共基础知识和 isual basic语言程序设计 (考试时间90分钟,满分100分) 、选择题(每小题2分,共70分) (1)下列叙述中正确的是() A)算法的效率只与问题的规模有关,而与数据的存储结构无关 B)算法的时间复杂度是指执行算法所需要的计算工作量 C)数据的逻辑结构与存储结构是一一对应的 D)算法的时间复杂度与空间复杂度一定相关 (2)在结构化程序设计中,模块划分的原则是()。 A)各模块应包括尽量多的功能 B)各模块的规模应尽量大 C)各模块之间的联系应尽量紧密 D)模块内具有高内聚度、模块间具有低耦合度 (3)下列叙述中正确的是( A)软件测试的主要目的是发现程序中的错误 B)软件测试的主要目的是确定程序中错误的位置 C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作 D)软件测试是证明软件没有错误 (4)下列选项中不属于面向对象程序设计特征的是()。 A)继承性 B)多态性 C)类比性 D)封装性 (5)下列对队列的叙述正确的是() A)队列属于非线性表 B)队列按“先进后出”原则组织数据 C)队列在队尾删除数据 D)队列按“先进先出”原则组织数据 (6)对下列二叉树: 面面面区 进行前序遍历的结果为() A) DYBEAFCZX B) YDEBFZXCA C) ABDEYCFXZ D) ABCDEFXYZ (7)某二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为()。 A)n+1 B)n-1 D)n/2 (8)在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是() A)并 C)投影 D)笛卡尔乘积 (9)在ER图中,用来表示实体之间联系的图形是( A)矩形 B)椭圆形 C)菱形 D)平行四边形 (10)下列叙述中错误的是() A)在数据库系统中,数据的物理结构必须与逻辑结构一致 二级Ⅴ isual basic语言程序设计试卷第1页(共11页)
二级 Visual Basic 语言程序设计试卷 第 1 页(共 11 页) 2007 年 4 月全国计算机等级考试二级笔试试卷 公共基础知识和 Visual Basic 语言程序设计 (考试时间 90 分钟,满分 100 分) 一、选择题(每小题 2 分,共 70 分) (1)下列叙述中正确的是( )。 A)算法的效率只与问题的规模有关,而与数据的存储结构无关 B)算法的时间复杂度是指执行算法所需要的计算工作量 C)数据的逻辑结构与存储结构是一一对应的 D)算法的时间复杂度与空间复杂度一定相关 (2)在结构化程序设计中,模块划分的原则是( )。 A)各模块应包括尽量多的功能 B)各模块的规模应尽量大 C)各模块之间的联系应尽量紧密 D)模块内具有高内聚度、模块间具有低耦合度 (3)下列叙述中正确的是( )。 A)软件测试的主要目的是发现程序中的错误 B)软件测试的主要目的是确定程序中错误的位置 C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作 D)软件测试是证明软件没有错误 (4)下列选项中不属于面向对象程序设计特征的是( )。 A)继承性 B)多态性 C)类比性 D)封装性 (5)下列对队列的叙述正确的是( )。 A)队列属于非线性表 B)队列按“先进后出”原则组织数据 C)队列在队尾删除数据 D)队列按“先进先出”原则组织数据 (6)对下列二叉树: 进行前序遍历的结果为( )。 A)DYBEAFCZX B)YDEBFZXCA C)ABDEYCFXZ D)ABCDEFXYZ (7)某二叉树中有 n 个度为 2 的结点,则该二叉树中的叶子结点数为( )。 A)n+1 B)n-1 C)2n D)n/2 (8)在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是( )。 A)并 B)交 C)投影 D)笛卡尔乘积 (9)在 E-R 图中,用来表示实体之间联系的图形是( )。 A)矩形 B)椭圆形 C)菱形 D)平行四边形 (10)下列叙述中错误的是( )。 A)在数据库系统中,数据的物理结构必须与逻辑结构一致
B)数据库技术的根本目标是要解决数据的共享问题 C)数据库设计是指在已有数据库管理系统的基础上建立数据库 D)数据库系统需要操作系统的支持 (11)下列可以正确定义2个整型变量和1个字符串变量的语句是 A)Dim n, m As Integer, s As String Dim a as integer bc As st D) Dim x%,y As Integer, Z As String (12)下列表达式中不能判断x是否为偶数的是()。 A)x/2=Int(x/2) B)xMod 2=0 C) FiX(x/2Fx/ D)x1=0 (13)设在名称为 Myform的窗体上只有1个名称为C1的命令按钮,下列叙述中正确的是 A)窗体的Cck事件过程的过程名是 Myform Click B)命令按钮的 Click事件过程的过程名是 CI Click C)命令按钮的 Click事件过程的过程名是 Commandl Click D)上述3种过程名称都是错误的 (14)设窗体上有1个滚动条,要求单击滚动条右端的按钮一次,滚动块移动一定的刻度 值,决定此刻度值的属性是()。 A)Max B) Min C) SmallChange D) Large Change (15)1个二维数组可以存放1个矩阵。在程序开始有语句 Option Base0,则下面定义的数 组中正好可以存放1个4×3矩阵(即只有12个元素)的是 A) Dim a(-2 To 0, 2)As Integer B) Dim a(3, 2)As Integer C) Dim a(4, 3)As Integer D) Dim a(-1 To-4, -1 To-3)As Integer (16)若设置了文本框的属性 Password Char="$",则运行程序时向文本框中输入8个任意字 符后,文本框中显示的是()。 A)8个"$ B)1个"$" C)8个”* D)无任何内容 (17)设在窗体上有1个名称为 Combo的组合框,含有5个项目,要删除最后一项,正确 的语句是()。 A) Combol. Removeltem Combol Text B) Cobol Removeltem 4 C)Combol Removeltem Combol ListCount D) Combol. Removeltem 5 (18)工程中有2个窗体,名称分别为Form1、Form2, Forml为启动窗体,该窗体上有命 令按钮 Command 1。要求程序运行后单击该命令按钮时显示Form2,则按钮的 Click 事件过程应该是( A) Private Sub Command1 Click( B) Private Sub Command1 Click( Form2 Visible Form2 Show End Sub End Sub C) Private Sub Command1 Click( D) Private Sub Commandl Click() Form2 load Load form2 End Sub End sub (19)若在某窗体模块中有下列事件过程: Private Sub Commandl Click(Index As Integer) 二级 Visual basic语言程序设计试卷第2页(共11页)
二级 Visual Basic 语言程序设计试卷 第 2 页(共 11 页) B)数据库技术的根本目标是要解决数据的共享问题 C)数据库设计是指在已有数据库管理系统的基础上建立数据库 D)数据库系统需要操作系统的支持 (11)下列可以正确定义 2 个整型变量和 1 个字符串变量的语句是( )。 A)Dim n,m As Integer,s As String B)Dim a%,b$,c As String C)Dim a As Integer,b,c As String D)Dim x%,y As Integer,z As String (12)下列表达式中不能判断 x 是否为偶数的是( )。 A)x/2=Int(x/2) B)x Mod 2=0 C)FiX(x/2)=x/2 D)x\2=0 (13) 设在名称为 Myform 的窗体上只有 1 个名称为 C1 的命令按钮,下列叙述中正确的是 ( )。 A)窗体的 Click 事件过程的过程名是 Myform_Click B)命令按钮的 Click 事件过程的过程名是 C1_Click C)命令按钮的 Click 事件过程的过程名是 Command1_Click D)上述 3 种过程名称都是错误的 (14)设窗体上有 1 个滚动条,要求单击滚动条右端的 按钮一次,滚动块移动一定的刻度 值,决定此刻度值的属性是( )。 A)Max B)Min C)SmallChange D)LargeChange (15)1 个二维数组可以存放 1 个矩阵。在程序开始有语句 Option Base 0,则下面定义的数 组中正好可以存放 1 个 4╳3 矩阵(即只有 12 个元素)的是( )。 A)Dim a(-2 To 0,2)As Integer B)Dim a(3,2)As Integer C)Dim a(4,3)As Integer D)Dim a(-1 To -4,-1 To -3)As Integer (16)若设置了文本框的属性 PasswordChar="$",则运行程序时向文本框中输入 8 个任意字 符后,文本框中显示的是( )。 A)8 个"$" B)1 个"$" C)8 个"*" D)无任何内容 (17)设在窗体上有 1 个名称为 Combol 的组合框,含有 5 个项目,要删除最后一项,正确 的语句是( )。 A)Combo1.RemoveItem Combo1.Text B)Combo1.RemoveItem 4 C)Combo1.RemoveItem Combo1.ListCount D)Combo1.RemoveItem 5 (18)工程中有 2 个窗体,名称分别为 Form1、Form2,Form1 为启动窗体,该窗体上有命 令按钮 Command1。要求程序运行后单击该命令按钮时显示 Form2,则按钮的 Click 事件过程应该是( )。 A)Private Sub Command1_Click( ) B)Private Sub Command1_Click( ) Form2.Visible Form2.Show End Sub End Sub C)Private Sub Command1_Click( ) D)Private Sub Command1_Click( ) Form2.Load Load Form2 End Sub End Sub (19)若在某窗体模块中有下列事件过程: Private Sub Command1_Click(Index As Integer)
End Sub 则下列叙述中正确的是()。 A)此事件过程与不带参数的事件过程没有区别 B)有1个名称为 Command1的窗体,单击此窗体则执行此事件过程 C)有1个名称为 Command1的控件数组,数组中有多个不同类型控件 D)有1个名称为 Command1的控件数组,数组中有多个相同类型控件 (20)下列循环语句中在任何情况下都至少执行一次循环体的是() A) Do While B)Whle 循环体 循环体 Wend C)Do D) Do Until 循环体 循环体 LoopUntil op (21)在窗体上有1个名为Cdl的通用对话框,为了在运行程序时打开保存文件对话柜 则在程序中应使用的语句是( A CoACtion=2 B)Cdl.Action=l C) Cd1. ShowSave=True D) Cd1 Show Save=0 (22)下列关于菜单的叙述中错误的是() A)各级菜单中的所有菜单项的名称必须惟 B)同一子菜单中的菜单项名称必须惟一,但不同子菜单中的菜单项名称可以相同 C)弹出式菜单用 PopupMenu方法弹出 D)弹出式菜单也用菜单编辑器编辑 (23)已知有下列过程 Private Sub procl(a As Integer, b As String, Optional x As Boolean) End Sub 正确调用此过程的语句是() A)Call procl(5) B) Call procl 5, abc", False C)procl(12, "abc",True (24)在窗体上有1个名称为Text1的文本框和1个名称为 Command1的命令按钮,要求在 程序执行时,每单击命令按钮一次,文本框向右移动一定距离。下列能够正确实现上 述功能的程序是()。 A) Private Sub Command1 Click( B) Private Sub Command1 Click() Textl. Left=100 ext Left=Text Left-100 End Sub End Sub C) Private Sub Command1 Click() D) Private Sub Command1 Click() Textl. Move Text1. Left+100 Text Move text Left End Sub End Sub (25)某人创建了1个工程,其中的窗体名称为 Forml:之后又添加了1个名为Form2的 窗体,并希望程序执行时先显示Form2窗体,那么,他需要做的工作是() A)在工程属性对话框中把“启动对象”设置为Form2 B)在 Forml的Load事件过程中加入语句 Load form2 C)在Form2的Load事件过程中加入语句Fom2Show 二级 Visual basic语言程序设计试卷第3页(共11页)
二级 Visual Basic 语言程序设计试卷 第 3 页(共 11 页) …… End Sub 则下列叙述中正确的是( )。 A)此事件过程与不带参数的事件过程没有区别 B)有 1 个名称为 Command1 的窗体,单击此窗体则执行此事件过程 C)有 1 个名称为 Command1 的控件数组,数组中有多个不同类型控件 D)有 1 个名称为 Command1 的控件数组,数组中有多个相同类型控件 (20)下列循环语句中在任何情况下都至少执行一次循环体的是( )。 A)Do While B)While 循环体 循环体 Loop Wend C)Do D)Do Until 循环体 循环体 LoopUntil Loop (21)在窗体上有 1 个名为 Cd1 的通用对话框,为了在运行程序时打开保存文件对话框, 则在程序中应使用的语句是( )。 A)Cd1.Action=2 B)Cd1.Action=1 C)Cd1.ShowSave=True D)Cd1.ShowSave=0 (22)下列关于菜单的叙述中错误的是( )。 A)各级菜单中的所有菜单项的名称必须惟一 B)同一子菜单中的菜单项名称必须惟一,但不同子菜单中的菜单项名称可以相同 C)弹出式菜单用 PopupMenu 方法弹出 D)弹出式菜单也用菜单编辑器编辑 (23)已知有下列过程: Private Sub proc1(a As Integer,b As String,Optional x As Boolean) …… End Sub 正确调用此过程的语句是( )。 A)Call proc1(5) B)Call proc1 5,"abc",False C)proc1(12,"abc",True) D)proc1 5,"abc" (24)在窗体上有 1 个名称为 Text1 的文本框和 1 个名称为 Command1 的命令按钮,要求在 程序执行时,每单击命令按钮一次,文本框向右移动一定距离。下列能够正确实现上 述功能的程序是( )。 A)Private Sub Command1_Click( ) B)Private Sub Command1_Click( ) Text1.Left=100 Text1.Left=Text1.Left-100 End Sub End Sub C)Private Sub Command1_Click( ) D)Private Sub Command1_Click( ) Textl.Move Text1.Left+100 Text1.Move Text1.Left End Sub End Sub (25)某人创建了 1 个工程,其中的窗体名称为 Form1;之后又添加了 1 个名为 Form2 的 窗体,并希望程序执行时先显示 Form2 窗体,那么,他需要做的工作是( )。 A)在工程属性对话框中把“启动对象”设置为 Form2 B)在 Forml 的 Load 事件过程中加入语句 Load Form2 C)在 Form2 的 Load 事件过程中加入语句 Form2.Show
D)把Form2的 TabIndex属性设置为l,把 Forml的 Tablndex属性设置为2 (26)窗体上有1个名称为Text1的文本框和1个名称为 Command1的命令按钮。要求程序 运行时,单击命令按钮,就可把文本框中的内容写到文件 out txt中,每次写入的内容 附加到文件原有内容之后。下列能够正确实现以上功能的程序是() A) Private Sub Command1 Click() Print #1.Text1. Text End Sub B) Private Sub Command1 Click() Open"out. txt"For Output As #1 Print #1.Text1.Text C) Private Sub Command1 Click( Open"out. txt"For Append As# I Print #lText1.Text Close #1 End Sub D) Private Sub Commandl Click() Open"out. txt"For Random As#1 Print #1.Text.Text Close #1 End Sub (27)为了计算1+3+5+…+99的值,某人编程下列: While k<=99 k=k+2: s=S+k Print 在调试时发现运行结果有错误,需要修改。下列错误原因和修改方案中正确的是()。 A) While…wend循环语句错误,应改为Fork=lTo9… Next k B)循环条件错误,应改为 While k<99 C)循环前的赋值语句k=错误,应改为k=0 D)循环中两条赋值语句的顺序错误,应改为s=s+k:k=k+2 (28)下列程序在调试时出现了死循环 Private Sub Commandl Click( n= nput Box("请输入一个整数") If n mod 2=0 Then n=n+1 n=n+2 二级 Visual basic语言程序设计试卷第4页(共11页)
二级 Visual Basic 语言程序设计试卷 第 4 页(共 11 页) D)把 Form2 的 TabIndex 属性设置为 l,把 Form1 的 TabIndex 属性设置为 2 (26)窗体上有 1 个名称为 Text1 的文本框和 1 个名称为 Command1.的命令按钮。要求程序 运行时,单击命令按钮,就可把文本框中的内容写到文件 out.txt 中,每次写入的内容 附加到文件原有内容之后。下列能够正确实现以上功能的程序是( )。 A)Private Sub Command1_Click( ) Open "out.txt" For Input As #1 Print #1,Text1.Text Close #1 End Sub B)Private Sub Command1_Click( ) Open "out.txt" For Output As #1 Print #1,Text1.Text Close #1 End Sub C)Private Sub Command1_Click( ) Open "out.txt" For Append As#1 Print #1,Text1.Text Close #1 End Sub D)Private Sub Command1_Click( ) Open "out.txt" For Random As#1 Print #1,Text1.Text Close #1 End Sub (27)为了计算 1+3+5+…+99 的值,某人编程下列: k=1 s=0 While k<=99 k=k+2∶s=s+k Wend Print s 在调试时发现运行结果有错误,需要修改。下列错误原因和修改方案中正确的是( )。 A)While…Wend 循环语句错误,应改为 For k=1 To 99 …Next k B)循环条件错误,应改为 While k<99 C)循环前的赋值语句 k=l 错误,应改为 k=0 D)循环中两条赋值语句的顺序错误,应改为 s=s+k:k=k+2 (28)下列程序在调试时出现了死循环: Private Sub Command1_Click( ) n=InputBox("请输入一个整数") Do If n Mod 2=0 Then n=n+1 Else n=n+2
End If Loop Until n=1000 End sub 下列关于死循环的叙述中正确的是()。 A)只有输入的n是偶数时才会出现死循环,否则不会 B)只有输入的n是奇数时才会出现死循环,否则不会 C)只有输入的n是大于1000的整数时才会出现死循环,否则不会 D)输入任何整数都会出现死循环 (29)在窗体上有1个名称为 Common Dialog的通用对话框和1个名称为 Command1的命 令按钮,以及其他一些控件。要求在程序运行时,单击 Command 1按钮,则显示打 开文件对话框,并在选择或输入了1个文件名后,就可以打开该文件。下列是 Command1 Click事件过程的两种算法 算法1: Private Sub Commandl Click() Common Dialog. ShowOpen Open Common Dialog. FileName For Input As #1 End Sub 算法2 Private Sub Commandl Click( Common Dialog. ShowOpen If Common Dialogl FileNames""Then Open Common Dialogl FileName For Input As #1 EndIf End Sub 下列关于这两种算法的叙述中正确的是() A)显示打开文件对话框后若未选择或输入任何文件名,则算法2会出错,算法1不会 B)显示打开文件对话框后若未选择或输入任何文件名,则算法1会出错,算法2不会 C)两种算法的执行结果完全一样 D)算法1允许输入的文件名中含有空格,而算法2不允许 (30)窗体上有1个名称为List的列表框,其中已经输入了若干个项目,如图所示;还有 2个文本框,名称分别为 TextI、Text2,1个名称为 Command1的命令按钮,并有下 列事件过程。 =口x Private Sub Commandl Click() Dim str As String s As String k As Integer s=TextI For k=List. ListCount-l To O Step-I If InStr(Listl List(k), s)>0 Then strstr& List List(k)& End lf 二级 Visual basic语言程序设计试卷第5页(共11页)
二级 Visual Basic 语言程序设计试卷 第 5 页(共 11 页) End If Loop Until n=1000 End Sub 下列关于死循环的叙述中正确的是( )。 A)只有输入的 n 是偶数时才会出现死循环,否则不会 B)只有输入的 n 是奇数时才会出现死循环,否则不会 C)只有输入的 n 是大于 1000 的整数时才会出现死循环,否则不会 D)输入任何整数都会出现死循环 (29)在窗体上有 1 个名称为 CommonDialog1 的通用对话框和 1 个名称为 Command1 的命 令按钮,以及其他一些控件。要求在程序运行时,单击 Command1 按钮,则显示打 开文件对话框,并在选择或输入了 1 个文件名后,就可以打开该文件。下列是 Command1_Click 事件过程的两种算法。 算法 1: Private Sub Command1_Click( ) CommonDialogl.ShowOpen Open CommonDialogl.FileName For Input As #1 End Sub 算法 2: Private Sub Command1_Click( ) CommonDialogl.ShowOpen If CommonDialogl.FileName<>" " Then Open CommonDialogl.FileName For Input As #1 EndIf End Sub 下列关于这两种算法的叙述中正确的是( )。 A)显示打开文件对话框后若未选择或输入任何文件名,则算法 2 会出错,算法 1 不会 B)显示打开文件对话框后若未选择或输入任何文件名,则算法 1 会出错,算法 2 不会 C)两种算法的执行结果完全一样 D)算法 1 允许输入的文件名中含有空格,而算法 2 不允许 (30)窗体上有 1 个名称为 Listl 的列表框,其中已经输入了若干个项目,如图所示;还有 2 个文本框,名称分别为 Text1、Text2,1 个名称为 Command1 的命令按钮,并有下 列事件过程。 Private Sub Command1_Click( ) Dim str As String,s As String,k As Integer s=Text1 str=“ “ For k=Listl.ListCount-1 To 0 Step-1 If InStr(Listl.List(k),s)>0 Then str=str & Listl.List(k)& " " End If
Next k If str" Then Text2=没有匹配的项目 Else Text2=str End If End sub 程序运行时,在 TextI中输入“京”,单击命令按钮,则在Text2中显示的内容是( A)京 B)北京南京 C)南京北京 D)没有匹配的项目 (31)在窗体上画1个名称为 Command l的命令按钮,然后编写下列程序: Private Sub Commandl Click() Print fun("ABCDEFG") End Sub Function fun(st As String)As string steen=Len(st) For k=l To stlen/2 temp=temp+Mid(st, k, 1 )+Mid(st, stlen-k+1, 1) Next k fun=temp End Function 程序运行时,单击命令按钮,则在窗体上显示的是()。 A) ABCDEFG B) AGBFCE C) GFEDCBA D) AGBFCED (32)在窗体上先后画2个图片框,名称分别为 Picture和 banana, banana中添加了香蕉图 片,如图1所示,且将 banana. Drag Mode属性设置为1。要求程序运行时,可以用鼠 标把 banana拖拽到 Picture中,如图2所示。能实现此功能的事件过程是() 图2 A) Private Sub Form Drag Drop(Source As Control, X As Single, Y As Single) banana. Move Picturel Left+x, PicturelTop+Y End Sub B) Private Sub banana Drag Drop( Source As Control, X As Single, Y As Single) Source. Move Picture. Left+X, Picture ITop+Y End Sub C) Private Sub Picturel Drag Drop( Source As Control, X As Single, YAs Single Source. Move Picturel Left+x, Picturel Top+Y 二级 Visual basic语言程序设计试卷第6页(共11页)
二级 Visual Basic 语言程序设计试卷 第 6 页(共 11 页) Next k If str=" " Then Text2="没有匹配的项目" Else Text2=str End If End Sub 程序运行时,在 Text1 中输入“京”,单击命令按钮,则在 Text2 中显示的内容是( )。 A)京 B)北京南京 C)南京北京 D)没有匹配的项目 (31)在窗体上画 1 个名称为 Command1 的命令按钮,然后编写下列程序: Private Sub Command1_Click( ) Print fun("ABCDEFG") End Sub Function fun(st As String)As string stlen=Len(st) temp=“ “ For k=1 To stlen/2 temp=temp+Mid(st,k,1)+Mid(st,stlen-k+1,1) Next k fun=temp End Function 程序运行时,单击命令按钮,则在窗体上显示的是( )。 A)ABCDEFG B)AGBFCE C)GFEDCBA D)AGBFCED (32)在窗体上先后画 2 个图片框,名称分别为 Picture1 和 banana,banana 中添加了香蕉图 片,如图 1 所示,且将 banana.DragMode 属性设置为 1。要求程序运行时,可以用鼠 标把 banana 拖拽到 Picture1 中,如图 2 所示。能实现此功能的事件过程是( )。 图 1 图 2 A)Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single) banana.Move Picture1.Left+X,Picture1.Top+Y End Sub B)Private Sub banana_DragDrop(Source As Control, X As Single, Y As Single) Source.Move Picture1.Left + X, Picture 1.Top + Y End Sub C)Private Sub Picture1_DragDrop(Source As Control, X As Single, YAs Single) Source.Move Picture1.Left + X, Picture1.Top + Y
End Sub D) Private Sub Picturel Drag Drop(Source As Control, X As Single, Y As Single) banana Move banana Left+X ba End sub (33)在窗体上面1个名称为 Commandl的命令按钮,然后编写下列事件过程 Private Sub Command1 Click() Dim a(5, 5)As Integer or i=l To 5 F 1 To 5 a(,j)=(1+j)*50 For i=l To 5 S=S+a(1,1) Print End Sub 程序运行后,单击命令按钮,输出结果是() B) (34)在窗体上从左到右有 TextI、Text2两个文本框,如图所示,要求程序运行时,在 TextI 中输入1个分数后按回车键,则判断分数的合法性,若分数为0~100中的1个数 则光标移到Text2中;否则光标不动,并弹出对话框显示“分数错”。下列程序中正 确的是() A) Private Sub Text1 KeyPress(Key Ascii As Integer) If KeyAscii=13Then“回车符的ASCⅡ码是13 Text2 Setfocus Textl SetFocus: MsgBox("分数错") End If nd If End sub B)Private Sub Textl Key Press(Key Ascii As Integer If KeyAscii=13Then“回车符的ASCI码是13 If a >=0 And a < 100 Then Else 二级 Visual basic语言程序设计试卷第7页(共11页)
二级 Visual Basic 语言程序设计试卷 第 7 页(共 11 页) End Sub D)Private Sub Picture1_DragDrop(Source As Control, X As Single, Y As Single) banana.Move banana.Left + X, banana.Top + Y End Sub (33)在窗体上面 1 个名称为 Command1 的命令按钮,然后编写下列事件过程 Option Base 1 Private Sub Command1_Click( ) Dim a(5, 5)As Integer For i= 1 To 5 For j = 1 To 5 a(i, j) = (i +j )*5\10 Next j Next i s=0 For i=1 To 5 s=s+a(i, i) Next i Print s End Sub 程序运行后,单击命令按钮,输出结果是( )。 A)15 B)13 C)11 D)9 (34)在窗体上从左到右有 Text1、Text2 两个文本框,如图所示,要求程序运行时,在 Text1 中输入 1 个分数后按回车键,则判断分数的合法性,若分数为 0~100 中的 1 个数, 则光标移到 Text2 中;否则光标不动,并弹出对话框显示“分数错”。下列程序中正 确的是( )。 A)Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii= 13 Then '回车符的 ASCII 码是 13 a = Val(Text1) If a >= 0 Or a = 0 And a <= 100 Then Text1.SetFocus Else
Text2 SetFocus: MsgBox("分数错") End lf End If End sub C) Private Sub Textl Key Press(Key Ascii As Integer) If KeyAscii= 13 Then 车符的ASCI码是13 If a 100 then Else TextI. SetFocus: MsgBox("分数错") End If End if End Sub D) Private Sub Textl Key Press(Key Ascii As Integer) If KeyAscii= 13 Then 车符的ASCI码是13 a= val(Text1) If a >=0 And a < 100 Then Text2 SetFocus Else Textl. SetFocus: Msg Box("分数错") End sub (35)在窗体上画2个命令按钮,名称分别为 Commandl、 Command2,然后编写下列事件 过程 Const n=5. m=4 Dim Private Sub Commandl Click() For i= 1 To m Next I End sub Private Sub Command2 Click( For i=l To m Else 二级 Visual basic语言程序设计试卷第8页(共11页)
二级 Visual Basic 语言程序设计试卷 第 8 页(共 11 页) Text2.SetFocus:MsgBox ("分数错") End If End If End Sub C)Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then '回车符的 ASCII 码是 13 a = Val(Text1) If a 100 Then Text2.SetFocus Else Text1.SetFocus : MsgBox ("分数错") End If End If End Sub D)Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then '回车符的 ASCII 码是 13 a = Val(Text1) If a >= 0 And a <= 100 Then Text2.SetFocus Else Text1.SetFocus:MsgBox ("分数错") End If End If End Sub (35)在窗体上画 2 个命令按钮,名称分别为 Command1、Command2,然后编写下列事件 过程。 Const n = 5, m=4 Dim a(m, n) Private Sub Command1_Click( ) k=1 For i= 1 To m For j = 1 To n a(i,j) =k k=k+1 Next j Next i End Sub Private Sub Command2_Click( ) summ = 0 For i= 1 To m For j = 1 To n If i = 1 Or i = m Then summ = summ + a(i, j) Else
Ifj=l Orj=n Then a(1,D) End If End If Next i Print summ End Sub 过程 Command 1 Click()的作用是在二维数组a中存放1个m行n列的矩阵;过程 Command2 Click()的作用是()。 A)计算矩阵外围一圈元素的累加和 B)计算矩阵除外围一圈以外的所有元素的累加和 C)计算矩阵第1列和最后一列元素的累加和 D)计算矩阵第1行和最后一行元素的累加和 二、填空题(每空2分,共30分) (1)在深度为7的满二叉树中,度为2的结点个数为【1】。 (2)软件测试分为白箱(盒)测试和黑箱(盒)测试。等价类划分法属于【2】测试 (3)在数据库系统中,实现各种数据管理功能的核心软件称为【3】 (4)软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测 试属于【4】阶段。 (5)在结构化分析使用的数据流图(DFD中,利用【5】对其中的图形元素进行确切解释。 (6)下列程序的功能是从键盘输入1个大于100的整数m,计算并输出满足不等式 1+2+32+42+.+n2<m的最大的n。请填空 Private Sub Commandl Click() im s, m, n As Integer m=Val( InputBox("请输入一个大于100的整数") 【6】 Do While s<m s=s+n率n Print"满足不等式的最大n是";【7】 End Sub (7)下列程序的功能是把文件 filel. txt中重复字符去掉后(即若有多个字符相同,则只保留 1个)写入文件fle2tt。请填空 Private Sub Commandl Click( D outchar=“ Open"file2txt" For Output As【8】 n=LOF(【9】) nchar=InputS(n, 1) 二级 Visual basic语言程序设计试卷第9页(共11页)
二级 Visual Basic 语言程序设计试卷 第 9 页(共 11 页) If j = 1 Or j = n Then summ = summ + a(i, j) End If End If Next j Next i Print summ End Sub 过程 Command1_Click( )的作用是在二维数组 a 中存放 1 个 m 行 n 列的矩阵;过程 Command2_Click( )的作用是( )。 A)计算矩阵外围一圈元素的累加和 B)计算矩阵除外围一圈以外的所有元素的累加和 C)计算矩阵第 1 列和最后一列元素的累加和 D)计算矩阵第 1 行和最后一行元素的累加和 二、填空题(每空 2 分,共 30 分) (1)在深度为 7 的满二叉树中,度为 2 的结点个数为 【1】 。 (2)软件测试分为白箱(盒)测试和黑箱(盒)测试。等价类划分法属于 【2】 测试。 (3)在数据库系统中,实现各种数据管理功能的核心软件称为 【3】 。 (4)软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测 试属于 【4】 阶段。 (5)在结构化分析使用的数据流图(DFD)中,利用 【5】 对其中的图形元素进行确切解释。 (6)下列程序的功能是从键盘输入 1 个大于 100 的整数 m,计算并输出满足不等式 1+22 +32 +42 +…+n2 <m 的最大的 n。请填空。 Private Sub Command1_Click( ) Dim s,m,n As Integer m=Val(InputBox("请输入一个大于 100 的整数")) n= 【6】 s=0 Do While s<m n=n+1 s=s+n*n Loop Print "满足不等式的最大 n 是"; 【7】 End Sub (7)下列程序的功能是把文件 filel.txt 中重复字符去掉后(即若有多个字符相同,则只保留 1 个)写入文件 file2.txt。请填空。 Private Sub Command1_Click( ) Dim inchar As String, temp As String, outchar As String outchar=“ “ Open "file1.txt" For Input As #1 Open "file2.txt" For Output As 【8】 n=LOF( 【9】 ) inchar=Input$(n,1)