1、国家二级( VB)机试模拟试卷 81及答案与解析 一、选择题 1 下列叙述中正确的是 ( )。 ( A)一个算法的空间复杂度大,则其时间复杂度也必定大 ( B)一个算法的空间复杂度大,则其时间复杂度必定小 ( C)一个算法的时间复杂度大,则其空间复杂度必定小 ( D)算法的时间复杂度与空间复杂度没有直接关系 2 下列叙述中正确的是 ( )。 ( A)循环队列中的元素个数随队头指针与队尾指针的变化而动态变化 ( B)循环队列中的元素个数随队头指针的变化而动态变化 ( C)循环队列中的元素个数随队 尾指针的变化而动态变化 ( D)以上说法都不对 3 一棵二叉树中共有 80个叶子节点与 70个度为
2、1的节点,则该二叉树中的总节点数为 ( )。 ( A) 219 ( B) 229 ( C) 230 ( D) 231 4 对长度为 10的线性表进行冒泡排序,最坏情况下需要比较的次数为 ( )。 ( A) 9 ( B) 10 ( C) 45 ( D) 90 5 构成计算机软件的是 ( )。 ( A)源代码 ( B)程序和数据 ( C)程序和文档 ( D)程序、数据及相关文档 6 软件生命周期可分为定义阶段、 开发阶段和维护阶段,下面不属于开发阶段任务的是 ( )。 ( A)测试 ( B)设计 ( C)可行性研究 ( D)实现 7 下面不能作为结构化方法软件需求分析工具的是 ( )。 ( A)系
3、统结构图 ( B)数据字典 (DD) ( C)数据流程图 (DFD图 ) ( D)判定表 8 在关系模型中,每一个二维表称为一个 ( )。 ( A)关系 ( B)属性 ( C)元组 ( D)主码 (键 ) 9 若实体 A和 B是一对多的联系,实体 B和 C是一对一的联系,则实体 A和 C的联系是 ( )。 ( A)一 对一 ( B)一对多 ( C)多对一 ( D)多对多 10 有三个关系 R、 S和 T如下: 则由关系 R和S得到关系 T的操作是 ( )。 ( A)选择 ( B)投影 ( C)交 ( D)并 11 在 visual Basic中,不能关闭的窗口是 ( )。 ( A)窗体设计器窗
4、口 ( B)工程窗口 ( C)属性窗口 ( D)立即窗口 12 下列说法中,错误的是 ( )。 ( A)变量名长度不能超过 255个字符 ( B)变量名的第一个字符可以是字母或数字 ( C)变量名只能由字母、数字和下画线组成 ( D) 变量名不能使用保留字 13 长整型常数的类型说明符为 ( )。 ( A) ( B) # ( C) & ( D) 14 产生 100以内 (不含 100)2位随机整数的 Visual Basic表达式是 ( )。 ( A) Int(Rnd(1)*91)+10 ( B) Int(Rnd(1)*90)+10 ( C) Int(Rnd(1)*91)+11 ( D) In
5、t(Rnd(1)*90)+11 15 下列运算符中,优先级别最低的是 ( )。 ( A) Not ( B) Like ( C) Mod ( D) And 16 输入 Visual Basic源程序时,若一个命令行中包含两个语句,则两个语句之间的分隔符应使用 ( )。 ( A)冒号 (: ) ( B)分号 (; ) ( C)下画线 (_) ( D)连字符 (-) 17 在标准模块中,将 a定义为全局整型变量的语句是 ( )。 ( A) Static a As Integer ( B) Dim a As Integer ( C) Private a As Integer ( D) Public a
6、 As Integer 18 为了保存数据,需打开顺序文件 “E: UserData txt”,以下正确的命令是( )。 ( A) Open E: UserData txt For Input As #1 ( B) open“E: UserData txt“For Input As #2 ( C) Open E: UserData txt For Output As #1 ( D) Open“E: UserDam txt“For Output As #2 19 下列关于菜单项的描述中,错误的是 ( )。 ( A)通过内缩符号 ( )设置菜单项的层次 ( B)通过 Enabled属性设置菜单项的
7、有效性 ( C)菜单项的索引号可以不连续 ( D)菜单项的索引号必须从 1开始 20 对于含有多个窗体的工程而言,以下叙述中正确的是 ( )。 ( A)没有指定唐动窗体时,系统自动将最后一个添加的窗体设置为启动窗体 ( B)启动窗体可以通过 “工程属性 ”对话框指定 ( C) Load方法兼有装入和显示窗体两种功能 ( D) Hide方法可以将指定的窗体从内存中清除 21 命令按钮不支持的事件为 ( )。 ( A) Click ( B) DblClick ( C) GotFocus ( D) MouseMove 22 已知列表框控件 List1中已放入若干表项,下列关于 List1的叙述中错误
8、的是( )。 ( A)第一个表项的序号为 0 ( B)没有选中任何一个表项时, ListIndex属性的值为 -1 ( C)最后一个表项的序号为 ListCount ( D)可用 MultiSelect属性设置是否可多选 23 下列不属于计时器控件属性的是 ( )。 ( A) Enabled ( B) Interval ( C) Index ( D) visible 24 窗体上已有 1个名称为 Pieture1的图片框,要求实现下面 2个功能之一: (1)在窗体上移动鼠标时,立即将 Pieture1显示在鼠标位置 (2)在窗体上单击鼠标时,立即将 Picture1显示在鼠标位置 下面不能实现
9、上述任何功能的事件过程是 ( )。 ( A) Private Sub Form_NouseDown(Button As IntSger, Shift As Integer, X As Single, Y As Single) Pieture1 Move X, Y End Sub ( B) Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single,Y As Sinsle) Pieture1 Move X, Y End Sub ( C) Private Sub Form_MouseDown(Button As
10、 Integer,Shift As Integer, X As Single) Picture1 CurrentX=X Picture1 CurrentY=Y End Sub ( D) Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Picture1 Move X, Y End Sub 25 以下控件中,能显示滚动条的是 ( )。 ( A)文本框 ( B)形状 ( C)标签 ( D)图片框 26 下列关于水平滚动条的叙述中,错误的是 ( )。 ( A) Value
11、属性值表示单击滚动条两端的箭头时,滚动框向左或向右移动的增量 ( B) Scroll事件在鼠标拖动滚动框时产生 ( C)用鼠标拖动滚动框后,会触发 Change事件 ( D)单击滚动条两端箭头时,会触发 Change事件 27 下列关于控件数组的叙述中,正确的是 ( )。 ( A)控件数组可以由不同类型的控件组成 ( B)控件数组元素的最小下标值为 1 ( C)在设计阶段,可以改变控件数组元素的 Index属性值 ( D)控件数组的名字由 Caption属性指定 28 判断复选框是否被选中的属性为 ( )。 ( A) Selected ( B) Checked ( C) Value ( D)
12、Index 29 命令按钮、单选按钮、复选框都可以通过 Picture属性在控件上显示图片,但需事先设置某一属性,该属性为 ( )。 ( A) Appearance ( B) Style ( C) DisabledPicture ( D) DownPicture 30 以下不可以作为 “容器 ”的控件是 ( )。 ( A)图片框 ( B)图像框 ( C)框架 ( D)窗体 31 编写如下程序: Private Sub Command1_Click() Dim a As Integer, b As Integer a=3 b=2 If a * b 10 Then b=b+1 Else b=b-1
13、 Print b-a 0 End Sub 程序运行后,单击命令按钮 Command1,输出结果为 ( )。 ( A) True ( B) False ( C) 1 ( D) -1 32 编写如下程序: Private Sub Command1_Click() Dim score As Integer score=86 If score 85 Then r=1 ElseIf score 60, Then r=2 Else r=0 End Tf Print r End Sub 程序运行后,单击命令按钮 Command1,输出结果为 ( )。 ( A) 0 ( B) 1 ( C) 2 ( D) 86
14、 33 编写如下程序: Private Sub Command1_Click() Dim n As Integer, t As Long Static s As Integer t=1 For n=1 To 3 t=t*n s=s+t Next Print s End Sub 程序运行后,第二次单击命令按钮 Command1时,输出结果为 ( )。 ( A) 6 ( B) 9 ( C) 12 ( D) 18 34 编写如下程序: Private Sub Command1-Click() Dim X As Integer, Y As Integer x=1 y=1 Do y=x*y If y 1
15、0 Then Exit Do Else x=x+3 End If Loop Until x =10 Print x; y End Sub 程序运行 后,单击命令按钮 Command1,输出结果为 ( )。 ( A) 1 1 ( B) 4 1 ( C) 4 2 ( D) 7 28 35 编写如下程序: Private Sub Command1_Click() Dim a(10)As String s=“123456“ n=kn(s) For k=1 To n a(k)=Mid(s, k, 1) Next k For i=1 To n 2 t=a(i) a(i)=a(n-i+1) a(n-i+1)
16、=t Next i For k=1 To n Print a(k); Next k End Sub 程序运行后,单击命令按钮 Command1,输出结果为 ( )。 ( A) 654321 ( B) 123456 ( C) 654123 ( D) 123654 36 编写如下程序: 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 10 Then m=n fu
17、n1=m+n End Function 程序运行后,单击命令按钮 Command1,输出结果为 ( )。 ( A) 30 ( B) 32 ( C) 34 ( D) 36 37 编写如下程序: Prirate Sub Command1_Click() Dim Bum As Integer Dim k As Integer, n As Integer num=InputBox(“请输入一个正整数: “) k=num n=2 Do Do While num Mod 12=0 Print n; num=num n Loop n=n+1 Loop Until n k 2 End Sub 程序运行后,单击
18、命令按钮 Command1,并输入数值 20,则输出结果为 ( )。 ( A) 2 2 5 ( B) 2 3 4 ( C) 2 3 4 5 ( D) 2 5 38 编写如下程序: Private Sub Command1_Click() Dim n As Long, s As String n=InputBox(“输入一个数 “) Do While n 0 s=s& n Mod 10 s=s&n 10 Mod 10 n=n 100 Loop Print s End Sub 程序运行后,单击命令按钮 Command1,并输入数值 123456,则输出结果为 ( )。 ( A) 654311 (
19、B) 563412 ( C) 642531 ( D) 615243 39 编写如下程序: Private Sub Command1_Click() Dim a(3, 3) As Integer Dim b(3, 3) As Integer For i=1 To 3 For j =1 To 3 a(i, j)=i+j b(i, j)=a(i, j)+i*(j-1) Next j Next i For i=1 To 3 For j=1 To 3 Print b(i, j); Next j Print Next i End Sub 程序运行后,单击命令按钮 Command1,输出结果为 ( )。 (
20、 A) 2 3 4 3 4 5 3 6 9 ( B) 2 4 6 4 5 6 4 8 12 ( C) 3 5 7 5 8 11 7 10 13 ( D) 4 6 8 7 11 15 10 14 18 40 窗体上有 1个名称为 Command1的命令按钮, 1个名称为 List1、没有列表项的列表框。编写如下程序: Private Sub Command1_Click() Dim x As String, s As String, temp As String Dim i As Integer x=InputBox(“输入字符串 “, “输入 “) If x “Then For i=Lea(x
21、)To 1 Step-1 s=Mid(x, i, 1) If s “Then temp=s+temp Else List1 Addhem temp s = “ tem=“ End If Next List1 AddItem temp Else MsgBox“输入内容为空 !“ End If End Sub 程序运行后,单击命令按钮 Comd1,并输入 “Happy new year”,则在 List1中显示的内容为 ( )。 ( A) year new Happy ( B) Happy new year ( C) raey wen yppaH ( D) yppaH wen raey 二、基本操
22、作题 41 在名称为 Form1,标题为 “图片练习 ”的窗体上添加 1个名称为 Image1、宽 和高分别为 1800和 1200的图像框,设置属性使图形能自动放大或缩小以与图像框的大小相适应。最后将考生文件夹下的图片文件 “pic1 jpg”在图像框中显示。程序运行后的窗体如图所示。 注意:存盘时,将文件保存至考生文件夹下。窗体文件名保存为 sit1 frm工程文件名保存为 sit1 vbp。42 在名称为 Form1,标题为 “列表框练习 ”的窗体上添加 1个名称为 List1的列表框,表项内容依次输入 “环球时报 ”、 “人物 ”、 “探索 ”和 “读者 ”;再添加 2个标题分别为 “
23、复制 ”和 “移去 ”的命令按钮,如图所示。 要求 :编写适当的事件过程,在程序运行后,单击 “复制 ”按钮,可以将选中的列表项内容复制到已有列表项的尾部;单击 “移去 ”按钮,可以将选中的列表项的内容删除。 注意:存盘时,将文件保存至考生文件夹下,窗体文件名为 sjt2 frm,工程文件名为 sjt2 vbp。要求程序中不得使用变量,每个事件过程中只能写一条语句。三、简单应用题 43 在考生文件夹下包含一个工程文件 sjt3 vbp,请在名称为 Form1的窗体上添加一个名称为 Text1的文本框和一个名称为 C1、标题为 “转换 ”的命令按钮,如图所示。在程序运行时,单 击 “转换 ”按钮
24、,可以把。 Text1中的小写字母转换为大写,把大写字母转换为小写。窗体文件中已经给出了 “转换 ”按钮的 Click事件过程,但不完整,请去掉程序中的注释符,把程序中的 “?”改为正确的内容。 注意:不能修改程序中的其他部分。最后将修改后的文件按原文件名存盘。44 在考生文件夹下有一个工程文件 sjt4 vbp,其功能如下: 单击 “读数据 ”命令按钮,把考生文件夹下 in4 dat文件中已按升序排列的 60个数读入数组 A,并在Text1中显示: 单击 “输入 ”按钮,弹出一个输入对话框,接收用户输入的任意一个整数; 单击 “插入 ”按钮,将输入的数插入到 A数组中,使其仍能保持 A数组从
25、小到大排列,最后将 A数组的内容重新在 Text1中显示。在窗体文件中已经给出了全部控件 (如图所示 )和程序。但程序不完整,要求去掉程序中的注释符,把程序中的 “?”改为正确的内容,本程序只考虑插入一 个整数的情况。 注意:不得修改已经存在的内容和控件属性,最后将修政后的文件按原文件名存盘。四、综合应用题 45 在考生文件夹下有一个工程文件 sjt5 vbp,其功能如下。 单击 “读数据 ”按钮,则将考生文件夹下 in5 dat文件中的 100个正整数读入到数组 a中,同时在Text1文本框中显示。 单击 “分组 ”按钮,则将数组 a中所有 3的倍数的元素存入数组 b中,并对数组 b中的元素
26、按升序排序后显示在文本框 Text2中。 在给出的窗体文件中已经有了全部控件 (如图所示 ),但程序不完整。 要求:编写适当的程序部分 使其实现上述功能。 注意:考生不得修改窗体文件中已经存在的控件和程序,在结果程序运行之前,必须先执行 “分组 ”操作,然后再用窗体右上角的关闭按钮结束程序,否则将没有成绩。最后,程序按原文件名进行存盘。国家二级( VB)机试模拟试卷 81答案与解析 一、选择题 1 【正确答案】 D 【试题解析】 算法的空间复杂度是指算法在执行过程中所需要的内存空间。算法的时间复杂度,是指执行算法所需要的计算工作量,两者之间并没有直接关系,答案为 D。 2 【正确答案】 A 【
27、试题解析】 在循环队列中,用队 尾指针 rear指向队列中的队尾元素,用排头指针 front指向排头元素的前一个位置。因此,从排头指针 front指向的后一个位置直到队尾指针 rear指向的位置之间所有的元素均为队列中的元素。所以循环队列中的元素个数与队头指针和队尾指针的变化而变化, A正确。 3 【正确答案】 B 【试题解析】 二叉树中,度为 0的节点数等于度为 2的节点数加 1,即n2=n0=1。叶子节点即度为 0,则 n2=79,总节点数为 n0+n1+n2=80+70+79=229,答案为 B。 4 【正确答案】 C 【试题解析】 冒泡法是在扫描过程中逐次比较相邻两个元素的大小,最坏的
28、情况是每次比较都要将相邻的两个元素互换,需要互换的次数为9+8+7+6+5+4+3+2+1=45,选 C。 5 【正确答案】 D 【试题解析】 软件指的是计算机系统中与硬件相互依赖的另一部分,包括程序、数据和有关的文档,选 D。 6 【正确答案】 C 【试题解析】 开发阶段包括分析、设计和实施两类任务。其中分析、设计包括需求分析、总体设计和详细设计 3个阶段,实施则包括编码和测试两个阶段, C不属于开发阶段。 7 【正确答案】 A 【试题解析】 结构化方法软件需求分析工具主要有数据流图、数据字典、判定树和判定表。 8 【正确答案】 A 【试题解析】 关系模型采用二维表来表示,即每个二维表称为一
29、个关系。 9 【正确答案】 B 【试题解析】 A和 B为一对多的联系,则对于 A中的每一个实体, B中有多个实体与之联系,而 B与 C为一对一联系,则对于 B中的每一个实体, C中至多有一个实体与之联系,则可推出对于 A中的每一个实体, C中有多个实体与联系,所以为一对多联系。 10 【正确答案】 D 【试题解析】 关系 T中的元素与关 系 R和关系 S中不同元素的总和,因此为并操作。 11 【正确答案】 B 【试题解析】 在 Visual Basic中,工程窗口不能关闭。 12 【正确答案】 B 【试题解析】 变量的命名规则是: 必须以字母开头,由字母、汉字、数字或下画线组成; 不能在变量名
30、中出现句点 “ ”、空格或者嵌入字符,例如 !、 、 #、 $、 &等; 长度不得超过 255个字符; 不能使用组成 Visual Basic的关键字,包括预定义语句 (例如 If、 For等 )、函数(Abs、 Sqr等 )和操作符 (or、 Mod等 )。 13 【正确答案】 C 【试题解析】 :整型, #:双精度实型, &:长整型, :货币型。 14 【正确答案】 B 【试题解析】 本题考查 Rnd随机函数和 Int取整函数,首先 Rnd随机函数的范围为 0, 1), Int函数的作用是返回不大于自变量的最大整数,所以当 Rnd(1)* 90后变为 0, 90),经取整后变为 0, 89
31、,所以本题的正确答案是选项 B。 15 【正确答案】 D 【试题解析】 运算符的优先顺序是:算术运算符关系运算符 逻辑运算符。 算术运算符的优先顺序 是: - (*与 ) Mod (+与 -)。 关系运算符的优先顺序是: = (或 ) ( ) ( =)( =) ( ) IsLike, 逻辑运算符的优先顺序是:非 (: Not)与 (And)或 (Or)异或 (Xor)等价(Epv)蕴含 (Imp)。 16 【正确答案】 A 【试题解析】 输入 Visual Basic源程序时,若一个命令行中包含两个语句,则两个语句之间的分隔符应使用冒号 (: )。 17 【正确答案】 D 【试题解析】 Vis
32、ual Basic中变 量的作用域分为 3类。局部变量:在过程内用Dim语句或用 Static语句声明的变量。只能在本过程中使用。窗体模块级变量:在 “通用声明 ”段中用 Dim语句或用 Private语句声明的变量,可破本窗体模块的任何过程访问。全局变量:在 “通用声明 ”段中用 Public语句声明的变量,可被本应用程序的任何过程或函数访问。 18 【正确答案】 D 【试题解析】 打开顺序文件的基本格式为: Open“文件名称 ”For Mode As #文件号。 “文件名称 ”表示要打开的文件的路径。 Mode为打开模 式: OutPut用于输出; Append用于追加写入; Input
33、用于读取。 文件号为打开文件时指定的句柄 (即文件号 )。 19 【正确答案】 D 【试题解析】 菜单项的索引号不要求必须从 l开始。 20 【正确答案】 B 【试题解析】 没有指定启动窗体时,系统自动将第一个窗体默认为启动窗体,所以选项 A错误;要想使包含多个窗体的工程中的某个窗体在程序运行时首先显示,则方法就是在 “工程属性 ”对话框中将 “启动对象 ”设置为某个窗体,所以选项B正确; Load方法有装入窗体功能,所以选项 C错误; Hide方法用于使指定的窗体不显示,但不从内存中删除窗体,所以选项 D错误。 21 【正确答案】 B 【试题解析】 命令按钮支持的事件有 Click, Got
34、Focus和 MouseMove,不支持DbIClick事件,故选 B。 22 【正确答案】 C 【试题解析】 列表框控件 List1的序号从 0开始计算,最后一项的序号是IAstCount-1,因此答案选 C。 23 【正确答案】 D 【试题解析】 计时器控件属性包括 Enabled、 Interval和 Index等属性,不包括Visible属性。选 D。 24 【正确答案】 C 【试题解析】 Picture的 CurrentX和 CurrentY属性,是将光标定位在 x与 y的位置,并没有把 Picture显示在鼠标位置,所以选 C。 25 【正确答案】 A 【试题解析】 不能显示滚动条
35、的控件有形状、标签和图片框。选 A。 26 【正确答案】 A 【试题解析】 当滚动框移动时,触发 Change事件。 Value属性是滚动条的当前位置值,其返回值始终介于 Max和 Min属性值之间,包括这两个值。选 A。 27 【正确答案】 C 【试题解析】 控件数组必须用同类型的控件组成。最小下标为 0,控件数组的名字由 Name属性指定。选 C。 28 【正确答案】 C 【试题解析】 复选框组常用于提供多重选择 Value属性值决定每个复选框的选中状态: 0为未选、 1为选中、 2为不可用 (以灰色呈现 )。选 C。 29 【正确答案】 B 【试题解析】 命令按钮、单选按钮、复选框的 S
36、tyle属性为 0时,是标准方式,为 1时是图片方式。在 Style属性设置为 1时,可使用 Picture属性 (未选定时的图标或位图 )、 DownPicture属性 (选定 时的图标或位图和 DisablePieture属性 (禁止选择时的图标或位图 )。本题选 B。 30 【正确答案】 B 【试题解析】 图片框、框架和窗体控件可以作为容器,图像框控件不可以。选B。 31 【正确答案】 B 【试题解析】 HElse 语句对 b进行操作。 a*b=6,小于 10,所以执行b=b+1=3。 Print语句中, b-a=0,条件为假。选 B。 32 【正确答案】 B 【试题解析】 考查 IfE
37、lse IfElseEnd If 语句。条件判断成立则执行对应分支的语句。 86 85,所以 r=1。选 B。 33 【正确答案】 B 【试题解析】 Staic关键字定义的变量退出事件后变量值保持不变。 For循环根据变量的初值进行计算。当第二次点击时, s的初值是第一次事件执行后的结果。选B。 34 【正确答案】 B 【试题解析】 DoLoop Until 循环,当条件为真时循环执行循环体。代人初值进行计算可得结果。选 B。 35 【正确答案】 A 【试题解析】 第一个 For循环从字符串 s中提取数字,赋值给数组 a的元素。第二个 For循环对数组 a中的元素实现倒序排列。 第三个。 Fo
38、r循环实现打印。选A。 36 【正确答案】 D 【试题解析】 Function funl函数中的参数都是引用传递,会改变实参的值,执行完后 Command1_Crick中变量 x的值为 12。选 D。 37 【正确答案】 A 【试题解析】 MOd为求余函数。内层 Do While循环在 Hum MOd n不等于 0时退出。 Do Loop Until循环满足 n k 2条件时退出,执行结果选 A。 38 【正确答案】 A 【试题解析】 &为字符串连接函数。循环体取 n的个位数、十位数、百 位数组成字符串 8。循环执行后 s字串和输入的字串倒序。选 A。 39 【正确答案】 B 【试题解析】 第
39、一个 For循环对数组 a和数组 b的元素赋初值。第二个 For循环实现打印。嵌套循环先执行内循环,条件不满足时退出执行外循环。直到外循环也不满足条件时结束。选 B。 40 【正确答案】 A 【试题解析】 List1 Addltem可以为列表框添加列表项。 For循环中通过 Mid函数从字串中倒序取出字符,碰到空格时添加新列表项。选 A。 二、基本操作题 41 【正确答案】 【操作步骤】 步骤 1:建立 界面,并设置控件的属性。程序中涉及的控件及属性见表 1。 步骤 2:调试并运行程序,关闭程序后按题目要求存盘。 【试题解析】 按照题目要求,通过图像框的 Name、 width、 Height
40、和 Picture属性设置图像框, Stretch属性用于设置图像框中的图形能自动放大或缩小以与图像框的大小相适应。 42 【正确答案】 【操作步骤】 步骤 1:建立界面,并设置控件的属性。程序中用到的控件及属性见表 2。 步骤 2:编写程序代码。 参考答案 Private Sub Command1_Click() List1 AddItem List1 Text List1 RemoveItem List1 Listlndex End Sub Private Sub Command2_Click() List1 RemoveItem List1 ListIndex End Sub 步骤 3:
41、调试并运行程序,关闭程序后按题目要求存盘。 【试题解析】 在 command1_click事件过程中,通过列表框的 AddItem和RemoveItem方法将选中的列表项内容复制到已有列表项的尾部;在Command2_Click事件过程中,通 过列表框的 Removehem方法将选中的列表项内容删除。 三、简单应用题 43 【正确答案】 【操作步骤】 步骤 1:打开本题工程文件,并设置控件的属性。程序中用到的控件及属性见表 1。 步骤 2:分析并编写程序代码。 程序提供代码如下: Private Sub C1_Click() Dim a$。b$。 k, n a$=“ n =Asc(“a“)-A
42、sc(?) For k =1 To Len(Text1 Text) b$=Mid(Text1 Text, k, 1) lf b$ =“a“And b$ =“z“rhen b$=String(1, Asc(b$)-n ) Else lf b$ =“A“And b$ =“Z“Then b$=String(1, Ase(b$)?) End lf End If a$=a$+b$ Next k Text1 Text=?End Sub 参考答案: 第 1个 ?处填入: “A“ 第 2个 ?处填入: +n 第 3个 ?处填入: a 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 【试题解析】 stri
43、ng(个数,字符 )函数用于返回含指定个数字符的字符串,其中的字符可以是字符码 或字符; ASc(字符串 )函数用于返回字符串首字符的 ASCII码值。本题关键是计算同一字母大小写 ASCII码值的差值,由于小写字母的 ASCII码值大于大写字母的 ASCII码值,差值表达式应为: n =AsC(“a“)-ASC(“A“)。对于小写字母的 ASCII码应减去这个差值以获得其大写字母;对于大写字母的ASCII码则应加上这个差值以获得其小写字母。 44 【正确答案】 【操作步骤】 步骤 1:打开本题工程文件。 步骤 2:分析并编写程序代码。 程序提供代码如下: Dim a(100)As Integ
44、er, num As Integer Prirate Sub Command1_Click() Dim k As Integer Open App Path “ in4 dat“For Input As #1 For k=1 To 60 Input #1, a(k) Text1=Text1+Str(a(k)+Space(2) NPxt k Close End Sub Private Sub Command2_Click() Bum=InputBox(“请输入一个数 “) End Sub Private Sub Command3_Click() For i=1 To 60 If aura a(i
45、)Then? Next i For j=60 To i? a(j+1)= Next j ?=mum Text1=“ 以下程序段将插入后的数组 A重新显示在 Text1中 For k=1 To? Text1=Text1+Str(a(k)+Space(2) Next k End Sub 参考答案: 第 1个 ?处填入: Exit For 第 2个 ?处填入: Step-1 第 3个 ?处填入: a(j) 第 4个 ?处填入: a(i) 第 5个 ?处填入: 61 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 【试题解析】 根据题意通过文件操作和 For循环语句,把考生文件夹下 in4 da
46、t文件中已按升序方式排列的 60个数读人数组 A,并运用 “+”连接符将 其显示在Text1中;在 Command2_Click事件过程中 InputBox函数弹出一个输入对话框,接收用户输入的任意一个整数,赋值给变量 n。 在 Command3_Click事件过程中,将输入的数与数组中的数值进行比较,把 n插入到 A数组中合适的位置,并通过 For循环语句将插入后的数组 A重新显示在Text1中,使其仍保持 A数组的升序排列。 四、综合应用题 45 【正确答案】 【操作步骤】 步骤 1:打开本题工程文件。 步骤 2:分析并编写程序代码。 程序提供代码如下: Option Base 1 Dim
47、 a(100)As Integer, num As Integer Private Sub Command1_Click() Dim k As Integer Open App Path&“ in5 dat“For Input As #1 For k=1 To 100 Input #1, a(k) Text1=Text1+Str(a(k)+Space(1) Next k Close #1 End Sub Private Sub Command2_Click() Dim b(100)As Integer num=0 If Len(Text1 Text)=0 Then MsgBox“请先执行 读数
48、据 功能 !“ Else 考生编写 (功能:生成 b数组,且按从小到大顺序排序 ) 注意:请务必将数组 b的元素个数存入变量 num中 以下程序段将已排序的 b数组显示在 Text2中 For i=1 To hum Text2 Text=Text2 Text+Str(b(i)+Space(2) Next i End If End Sub Private Sub Form_Unload(Cancel As Integer) Open App Path&“ out5 dat“For Output As #1 Print #1 Text2 Text Close #1 End Sub 参考答案: n=0 For k=1 To 100 If a(k)Mod 3=0 Then num=num+1 b(hum)=a(k) End If Next k For j=1 To num f=True For j=1 To Bum-1 If b(j) b(j+1) Then t=b(j) b(j)=b(j+1) b(j+1)=t f=False End If Next j If f Then Exit For End If Next i 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。