1、二级 VISUAL+BASIC 笔试-418 及答案解析(总分:88.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下叙述中正确的是( )A栈是“先进先出”的线性表B队列是“先进后出”的线性表C循环队列是非线性结构D有序线性表既可以采用顺序存储结构,也可以采用链式存储结构(分数:2.00)A.B.C.D.2.支持子程序调用的数据结构是( )A栈 B树C队列 D二叉树(分数:2.00)A.B.C.D.3.某二叉树有 5 个度为 2 的结点,则该二叉树中的叶子结点数是( )A10 B8C6 D4(分数:2.00)A.B.C.D.4.下列排序方法中,最坏情况下比较次数最
2、少的是( )A冒泡排序 B简单选择排序C直接插入排序 D堆排序(分数:2.00)A.B.C.D.5.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下列属于应用软件的是( )A编译程序 B操作系统C教务管理系统 D汇编程序(分数:2.00)A.B.C.D.6.下列叙述中错误的是( )A软件测试的目的是发现错误并改正错误B对被调试的程序进行“错误定位”是程序调试的必要步骤C程序调试通常也称为 DebugD软件测试应严格执行测试计划,排除测试的随意性(分数:2.00)A.B.C.D.7.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是( )A提高耦合性降低内聚性有利于
3、提高模块的独立性B降低耦合性提高内聚性有利于提高模块的独立性C耦合性是指一个模块内部各个元素间彼此结合的紧密程度D内聚性是指模块间互相连接的紧密程度(分数:2.00)A.B.C.D.8.数据库应用系统中的核心问题是( )A数据库设计 B数据库系统设计C数据库维护 D数据库管理员培训(分数:2.00)A.B.C.D.9.两个关系 R、S 如下:(分数:2.00)A.B.C.D.10.将 E-R 图转换为关系模式时,实体和联系都可以表示为( )A属性 B键C关系 D域(分数:2.00)A.B.C.D.11.执行语句 Dim X,Y As Integer 后,( )Ax 和 Y 均被定义为整型变量B
4、x 和 Y 均被定义为变体类型变量CX 被定义为整型变量,Y 被定义为变体类型变量DX 被定义为变体类型变量,Y 被定义为整型变量(分数:2.00)A.B.C.D.12.下列关系表达式中,其值为 True 的是( )A“XYZ“XYz“ B“VisualBasic“visualbasie“C“the“=“there“ D“Integer“Int/(分数:2.00)A.B.C.D.13.执行下列程序段a$=“Visual Basic Programming“b$=“C+“c$=UCase(Left$(a$,7)&b$&Right$(a$,1 2)后,变量 c$的值为( )AVisual BASI
5、C Programming BVISUAL C+ProgrammingCVisual C+Programming DVISUAL BASIC Programming(分数:2.00)A.B.C.D.14.下列叙述中正确的是( )AMsgBox 语句的返回值是一个整数B执行 MsgBox 语句并出现信息框后。不用关闭信息框即可执行其他操作CMsgBox 语句的第一个参数不能省略D如果省略 MsgBox 语句的第三个参数(Title),则信息框的标题为空(分数:2.00)A.B.C.D.15.在窗体上画一个文本框(名称为 Text1)和一个标签(名称为 Label1),程序运行后,在文本框中每输入
6、一个字符,都会立即在标签中显示文本框中字符的个数。下列可以实现上述操作的事件过程是( )APrivate Sub Text1_Change()Label1.Caption=Str(Len(Text1.Text)End SubBPrivate Sub Text1_Click()Label1.Caption=str(Len(Text1.Text)End SubCPrivate Sub Text1_Change()Label1.Caption=Text1.TextEnd SubDPrivate Sub Label1_Change()Label1.Caption=Str(Len(Text1.Text)
7、End Sub(分数:2.00)A.B.C.D.16.在窗体上画两个单选按钮(名称分别为 Option1、Option2,标题分别为“宋体”和“黑体”)、1 个复选框(名称为 Check1,标题为“粗体”)和 1 个文本框(名称为 Text1,Text 属性为“改变文字字体”),窗体外观如右图所示。程序运行后,要求“宋体”单选钮和“粗体”复选框被选中,则下列能够实现上述操作的语句序列是( )(分数:2.00)A.B.C.D.17.在窗体上画一个名称为 Command1 的命令按钮,然后编写下列事件过程:Private Sub Command1_Click()c=1234c1=Trim(Str(
8、c)For i=1 To 4PrintNextEnd Sub程序运行后,单击命令按钮,要求在窗体上显示下列内容:1121231234则在横线处应填入的内容为( )ARight(cl,i) BLeft(c1,i) CMid(c1,i,1) DMid(c1,i,i)(分数:2.00)A.B.C.D.18.假定有下列程序段:For i=1 TO 3For j=5 To 1 Step-1Print i*jNextjNext i则语句 Print i*j 的执行次数是( )A15 B16 C17 D18(分数:2.00)A.B.C.D.19.在窗体上画两个文本框(名称分别为 Text1 和 Text2)
9、和一个命令按钮(名称为 Command1),然后编写下列事件过程:Private Sub Command1_Click()x=0DO While x50x=(x+2)*(x+3)n=n+1LoopText1.Text=Str(n)Text2.Text=Str(x)End Sub程序运行后,单击命令按钮,在两个文本框中显示的值分别为( )A1 和 0 B2 和 72 C3 和 50 D4 和 168(分数:2.00)A.B.C.D.20.阅读程序:Private Sub Form_Click()a=0For j=1 To 15a=a+j Mod 3NextjPrint aEnd Sub程序运行后
10、,单击窗体,输出结果是( )A105 B1 C120 D15(分数:2.00)A.B.C.D.21.下列说法中正确的是( )A当焦点在某个控件上时,按下一个字母键,就会执行该控件的 KeyPress 事件过程B因为窗体不接受焦点,所以窗体不存在自己的 KeyPress 事件过程C若按下的键相同,KeyPress 事件过程中的 KeyAscii 参数与 KeyDown 事件过程中的 KeyCode 参数的值也相同D在 KeyPress 事件过程中,KeyAscii 参数可以省略(分数:2.00)A.B.C.D.22.语句 Dim a(-3 To 4,3 To 6)As Integer 定义的数组
11、元素个数是( )A18 B28 C21 D32(分数:2.00)A.B.C.D.23.在窗体上画一个命令按钮,其名称为 Command1,然后编写下列代码:Option Base 1Private Sub Command1_Click()Dim aa=Array(1,2,3,4)j=1For i=4 T0 1 Step-1s=s+a(i)*jj=j*10Next iPrint sEnd Sub程序运行后,单击命令按钮,其输出结果是( )A4321 B1234 C34 D12(分数:2.00)A.B.C.D.24.假定通过复制、粘贴操作建立了一个命令按钮数组 Command1,下列说法中错误的是
12、( )A数组中每个命令按钮的名称(Name 属性)均为 Command1B若未做修改,数组中每个命令按钮的大小都一样C数组中各个命令按钮使用同一个(;lick 事件过程D数组中每个命令按钮的 Index 属性值都相同(分数:2.00)A.B.C.D.25.在窗体上画一个命令按钮,名称为 Command1,然后编写下列代码:Option Base 0Private Sub Command1_Click()Dim A1(4)As Integer,A2(4)As IntegerFor k=0 To 2A1(k+1)=InputBox(“请输入一个整数“)A2(3-k)=A1(k+1)Next kPr
13、int A2(k)End Sub程序运行后,单击命令按钮,在输入对话框中依次输入 2、4、6则输出结果为( )A0 B1 C2 D3(分数:2.00)A.B.C.D.26.下列关于函数过程的叙述中,正确的是( )A函数过程形参的类型与函数返回值的类型没有关系B在函数过程中,过程的返回值可以有多个C当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递D如果不指明函数过程参数的类型,则该参数没有数据类型(分数:2.00)A.B.C.D.27.在窗体上画两个标签和一个命令按钮,其名称分别为 Label1、Label2 和 Command1,然后编写下列程序:Private Sub fu
14、nc(L As Label)L.Caption=“1234“End SubPrivate Sub Form_Load()Label1.Caption=“ABCDE“Label2.Caption=10End SubPrivate Sub Command1_Click()a=Val(Label2.Caption)Call func(Labell)Label2.Caption=aEnd Sub程序运行后,单击命令按钮,则在两个标签中显示的内容分别为( )AABCD 和 10 B1234 和 100 CABCD 和 100 D1234 和 10(分数:2.00)A.B.C.D.28.在窗体上画一个命令
15、按钮(名称为 Command1),并编写下列代码:Function Funl(ByVal a As Integer,b As Integer)As IntegerDim t As Integert=a-bb=t+aFunl=t+bEnd FunctionPrivate Sub Command1_Click()Dim X As Integerx=10Print Funl(Funl(X,(Funl(x,x-1),x-1)End Sub程序运行后单击命令按钮,输出结果是( )A10 B0 C11 D21(分数:2.00)A.B.C.D.29.下列关于过程及过程参数的描述中,错误的是( )A过程的参数
16、可以是控件名称B调用过程时使用的实参的个数应与过程形参的个数相同C只有函数过程能够将过程中处理的信息返回到调用程序中D窗体可以作为过程的参数(分数:2.00)A.B.C.D.30.设有下列通用过程:Public Function Fun(xStr As String)As StringDim tStr As String,strL As IntegertStr=“ “strL=Len(xStr)i=strL/2DO While i=StrLtStr=tStr&Mid(xStr,i+1,1)i=i+1LoopFun=tStr&tStrEnd Function在窗体上画一个名称为 Text1 的文
17、本框和一个名称为 Command1 的命令按钮,然后编写下列的事件过程:Private Sub Command1_Click()Dim S1 As StringS1=“ABCDEF“Text1.Text=LCase(Fun(S1)End Sub程序运行后,单击命令按钮,文本框中显示的是( )AABCDEF Babcdef Cdefdef Ddefabc(分数:2.00)A.B.C.D.31.在窗体上画一个命令按钮和一个文本框(名称分别为 Command1 和 Text1),并把窗体的 KeyPreview 属性设置为 True,然后编写下列代码:Dim SaveAll As StringPri
18、vate Sub Form_Load()ShowText1.Text=“ “Text1.SetFocusEnd SubPrivate Sub Command1_Click()Text1.Text=LCase(SaveAll)+SaveAllEnd SubPrivate Sub Form_KeyPress(KeyAscii As Integer)SaveAll=SaveAll+Chr(KeyAscii)End Sub程序运行后,直接用键盘输入 VB,再单击命令按钮,则文本框中显示的内容为( )AvbVB B不显示任何信息 CVB D出错(分数:2.00)A.B.C.D.32.设有下列程序:Pri
19、vate Sub Form_Click()X=50For i=1 To 4y=InputBox(“请输入一个整数“)y=Val(y)If y Mod 5=0 Thena=a+yx=YElsea=a+xEnd IfNext iPrint aEnd Sub程序运行后,单击窗体,在输入对话框中依次输入 15、24、35、46,输出结果为( )A100 B50 C120 D70(分数:2.00)A.B.C.D.33.下列关于菜单的叙述中,错误的是( )A当窗体为活动窗体时,用Ctrl+E键可以打开菜单编辑器B把菜单项的 Enabled 属性设置为 False,则可删除该菜单项C弹出式菜单在菜单编辑器中
20、设计D程序运行时,利用控件数组可以实现菜单项的增加或减少(分数:2.00)A.B.C.D.34.下列叙述中错误的是( )A在程序运行时,通用对话框控件是不可见的B调用同一个通用对话框控件的不同方法(如 ShowOpen 或 ShowSave),可以打开不同的对话框窗口C调用通用对话框控件的 ShowOpen 方法,能够直接打开在该通用对话框中指定的文件D调用通用对话框控件的 ShowColor 方法可以打开颜色对话框窗口(分数:2.00)A.B.C.D.35.设在工程文件中有一个标准模块,其中定义了下列记录类型:Type BooksName As String*10TelNum As Stri
21、ng*20End Type在窗体上画一个名为 Command1 的命令按钮,要求当执行事件过程 Command1 Click 时,在顺序文件Person.txt 中写入一条 Books 类型的记录。下列能够完成该操作的事件过程是( )APrivate Sub Command1_Click()Dim B AS Books Open“Person txt“ For Output As#1 B.Name=InputBox(“输入姓名“) B.TelNum=InputBox(“输入电话号码“) Write#1 B Narne,B TelNumClose#1End SubBPrivate Sub Com
22、mand1_Click()Dim B AS BooksOpen“Person txt“For Input As#1B.Name=InputBox(“输入姓名“)B.TelNum=InputBox(“输入电话号码“)Print#1,B.Name,B.TelNamClose#lEnd SubCPrivate Sub Command1_Click()Dim BAS Books Open“Person txt“For Output As#1 B.Name=InputBox(“输入姓名“)B.TelNum=InputBox(“输入电话号码“) Write#1,B Close#1 End SubDPriv
23、ate Sub Command1_Click()Open“Person txt“For Input As#1Name=InputBox(“输入姓名“)TelNum=InputBox(“输入电话号码“)Prim#1 Name TelNumClose#1End Sub(分数:2.00)A.B.C.D.二、填空题(总题数:9,分数:18.00)36.假设用一个长度为 50 的数组(数组元素的下标从 0 到 49)作为栈的存储空间,栈底指针 bottom 指向栈底元素,栈顶指针 top 指向栈顶元素,如果 bottom=49.top=30(数组下标),则栈中具有 1 个元素。(分数:2.00)填空项
24、1:_37.软件测试可分为白盒测试和黑盒测试。基本路径测试属于 1 测试。(分数:2.00)填空项 1:_38.符合结构化原则的三种基本控制结构是:选择结构、循环结构和 1。(分数:2.00)填空项 1:_39.数据库系统的核心是 1。(分数:2.00)填空项 1:_40.在 E-R 图中,图形包括矩形框、菱形框、椭圆框,其中表示实体联系的是 1 框。(分数:2.00)填空项 1:_41.窗体如下图所示,其中汽车是名称为 Imagel 的图像框,命令按钮的名称为 Command1,计时器的名称为 Timer1,直线的名称为 Line1。程序运行时,单击命令按钮,则汽车每 0.1 秒向左移动 1
25、00,车头到达左边的直线时停止移动。请填空完成下列的属性设置和程序,以便实现上述功能。(分数:2.00)填空项 1:_42.设窗体上有一个名称为 Combo1 的组合框,并有下列程序:Private Sub Combo1_KeyPress(KeyAscii As Integer)If_=13 Then 回车符的 ASCII 码是 13For k=0 To Combo1.ListCount-1If Combo1.Text=Combo1.List(k)ThenCombo1.Text=“ “Exit ForEnd IfNext kIf Combo1.Text“ “Then_Combo1.Addlte
26、mEnd IfEnd IfEnd Sub程序的功能是:在组合框的编辑区中输入文本后按回车键,则检查列表中有无与此文本相同的项目,若有,则把编辑区中的文本删除;否则把编辑区中的文本添加到列表的尾部。请填空。(分数:2.00)填空项 1:_43.在当前目录下有一个名为“myfile.txt”的文本文件,其中有若干行文本。下列程序的功能是读入此文件中的所有文本行,按行计算每行字符的 ASCII 码之和,并显示在窗体上。请填空。Private Sub Command1_Click()Dim ch$,ascii As IntegerOpen“myfile.txt“For_AS#1While NOt EO
27、F(1)Line Input#1.chascii=toascii(_)Print asciiWendClose#1End SubPrivate Function toascii(mystr$)As Integern=0For k=1 To_n=n+Asc(Mid(mystr,k,1)Next ktoascii=nEnd Function(分数:2.00)填空项 1:_44.本程序实现文本加密。先给定序列:a1,a2,an,它们的取值范围是 1n,且互不相同。加密算法是:把原文本中第 k 个字符放到加密后文本的第 ak 个位置处。若原文本长度大于 n,则只对前 n 个字符加密,后面的字符不变;若
28、原文本长度小于 n,则在后面补字符“*”,使文本长度为 n 后再加密。例如若给定序列 a1,a2,a7 分别为 2,5,3,7,6,1,4当文本为“PROGRAM”时,加密后的文本为“APOMRRG”当文本为“PROGRAMMlNG”时,加密后的文本为“APOMRRGMING”当文本为“THANK”时,加密后的文本为“*TA*HKN”下面的过程 code 实现这一算法。其中参数数组 a()中存放给定序列(个数与数组 a 的元素个数相等)a1,a2,a3,的值,要加密的文本放在参数变量 mystr 中。过程执行完毕,加密后的文本仍放在变量mystr 中。请填空。Option Base 1Priv
29、ate Sub code(a()As Integer,mystr As String)Dim ch As String,cl As Stringn=Ubound(a)-Len(mystr)If n0 Thenmystrmystr&string(n,“*“)End Ifch=mystrFor k=_To Ubound(a)c1=Mid(mystr,k,1)n=_Mid$(ch,n)=c1Next kmystr=chEnd Sub(分数:2.00)填空项 1:_二级 VISUAL+BASIC 笔试-418 答案解析(总分:88.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00
30、)1.下叙述中正确的是( )A栈是“先进先出”的线性表B队列是“先进后出”的线性表C循环队列是非线性结构D有序线性表既可以采用顺序存储结构,也可以采用链式存储结构(分数:2.00)A.B.C.D. 解析:解析 本题主要考查了栈、队列、循环队列的概念,栈是先进后出的线性表,队列是先进先出的线性表。根据数据结构中各数据元素之间的前后间关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。有序线性表既可以采用顺序存储结构,也可以采用链式存储结构。2.支持子程序调用的数据结构是( )A栈 B树C队列 D二叉树(分数:2.00)A. B.C.D.解析:解析 栈是一种限定在一端进行插入与删除的
31、线性表。在主函数调用子函数时,要首先保存主函数当前的状态,然后转去执行子函数,把子函数的运行结果返回到主函数调用子函数时的位置,主函数再接着往下执行,这种过程符合栈的特点,所以一般采用栈式存储方式。3.某二叉树有 5 个度为 2 的结点,则该二叉树中的叶子结点数是( )A10 B8C6 D4(分数:2.00)A.B.C. D.解析:解析 根据二叉树的性质,在任意二叉树中,度为 O 的结点(即叶子结点)总是比度为 2 的结点多一个。4.下列排序方法中,最坏情况下比较次数最少的是( )A冒泡排序 B简单选择排序C直接插入排序 D堆排序(分数:2.00)A.B.C.D. 解析:解析 冒泡排序、简单选
32、择排序和直接插入排序法在最坏的情况下比较次数为:n(n-1)/2。而堆排序法在最坏的情况下需要比较的次数为 O(nlog2n)。5.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下列属于应用软件的是( )A编译程序 B操作系统C教务管理系统 D汇编程序(分数:2.00)A.B.C. D.解析:解析 编译程序和汇编程序属于支撑软件,操作系统属于系统软件,而教务管理系统属于应用软件。6.下列叙述中错误的是( )A软件测试的目的是发现错误并改正错误B对被调试的程序进行“错误定位”是程序调试的必要步骤C程序调试通常也称为 DebugD软件测试应严格执行测试计划,排除测试的随意性(分数
33、:2.00)A. B.C.D.解析:解析 软件测试是为了发现错误而执行程序的过程。软件测试要严格执行测试计划,排除测试中的随意性。程序调试通常也称 Debug,对被调试的程序进行“错误”定位是程序调试的必要步骤。7.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是( )A提高耦合性降低内聚性有利于提高模块的独立性B降低耦合性提高内聚性有利于提高模块的独立性C耦合性是指一个模块内部各个元素间彼此结合的紧密程度D内聚性是指模块间互相连接的紧密程度(分数:2.00)A.B. C.D.解析:解析 耦合性是反映模块间互相连接的紧密程度,内聚性是指一个模块内部各个元素间彼此结合的紧密程序。提
34、高模块的内聚性,降低模块的耦合性有利于模块的独立性。8.数据库应用系统中的核心问题是( )A数据库设计 B数据库系统设计C数据库维护 D数据库管理员培训(分数:2.00)A. B.C.D.解析:解析 在数据库应用系统中的一个核心问题就是设计一个能满足用户要求,性能良好的数据库,这就是数据库设计。所以数据库设计是数据库应用的核心。9.两个关系 R、S 如下:(分数:2.00)A.B. C.D.解析:解析 一个关系 R 通过投影运算后仍为一个关系 R,R是由 R 中投影运算所指出的那些域的列所组成的关系。所以题目中关系 S 是由关系 R 经过投影运算所得(选择运算主要是对关系 R 中选择由满足逻辑
35、条件的元组所组成的一个新关系)。10.将 E-R 图转换为关系模式时,实体和联系都可以表示为( )A属性 B键C关系 D域(分数:2.00)A.B.C. D.解析:解析 将 E-R 图转换为关系模式时,实体和联系都可以表示为关系。11.执行语句 Dim X,Y As Integer 后,( )Ax 和 Y 均被定义为整型变量Bx 和 Y 均被定义为变体类型变量CX 被定义为整型变量,Y 被定义为变体类型变量DX 被定义为变体类型变量,Y 被定义为整型变量(分数:2.00)A.B.C.D. 解析:解析 在 VB 中规定一个变量的数据类型的方式有:(1)在变量名的尾部附上类型说明符来标记变量的类型
36、,如%表示整型、$表示字符串型;(2)在定义变量时指定其类型,注意定义变量时每个变量都应使用 As 子句申明类型,否则该变量将被视为变体类型。语句定义一组以该语句中指定范围内的字母和以这些字母开头的变量名的数据类型。本题中 X 被定义为变体类型变量,Y 被定义为整型变量。12.下列关系表达式中,其值为 True 的是( )A“XYZ“XYz“ B“VisualBasic“visualbasie“C“the“=“there“ D“Integer“Int/(分数:2.00)A.B. C.D.解析:解析 VB 中比较字符串大小就是比较其 Ascii 值大小,规则如下:(1)如果字符串 A 的前 n
37、位的 Ascii 码值等于字符串 B 的前 n 位的 Ascii 码值,则继续比较下一位;(2)如果字符串 A 的第 n 位的Ascii 码值大干字符串 B 的第 n 位的 Ascii 码值,则字符串 A字符串 B,反之字符串 A字符串 B;(3)如果每一位的 Ascii 码值都相等,而且长度相同,则表示字符串 A字符串B;(4)如果字符串 A 是字符串 B 的前 m 位(例如 abcd 与 abcdef 比较),则字符串 A字符串 B。由于同一字母的大写的 Ascii 值小于其小写的 Ascii 值,根据上述规则本题答案为选项 B。13.执行下列程序段a$=“Visual Basic Pro
38、gramming“b$=“C+“c$=UCase(Left$(a$,7)&b$&Right$(a$,1 2)后,变量 c$的值为( )AVisual BASIC Programming BVISUAL C+ProgrammingCVisual C+Programming DVISUAL BASIC Programming(分数:2.00)A.B. C.D.解析:解析 Left$(字符串,个数)函数用于取出已有字符串最左边指定个数的字符串;Right(字符串,个数)函数用于取出已有字符串最右边指定个数的字符串;UCase0 函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变;
39、运算符用来强制两个表达式做字符串连接。本题中 UCase(Left$(a$,7)=UCase(“Visual“)=“VISUAL,Right$(a$,12)=“Programming“,故答案为选项B。14.下列叙述中正确的是( )AMsgBox 语句的返回值是一个整数B执行 MsgBox 语句并出现信息框后。不用关闭信息框即可执行其他操作CMsgBox 语句的第一个参数不能省略D如果省略 MsgBox 语句的第三个参数(Title),则信息框的标题为空(分数:2.00)A.B.C. D.解析:解析 MsgBox()函数用于显示提示信息,并可返回一个代表用户点击了哪个按钮的 Integer 类
40、型值,其常用语法为:MsgBox prompt,buttons,title)。其中:prompt 参数为消息框的提示信息,该参数是必须的;buttons 参数是一个整数用于控制消息框中按钮的数目、类型及消息框图标的样式;title 参数为消息框标题栏上显示的内容,如果省略 title,则将应用程序名放在标题栏中。MsgBox 语句没有返回值,在执行 MsgBox 语句后,不关闭消息框将不能执行其他操作。15.在窗体上画一个文本框(名称为 Text1)和一个标签(名称为 Label1),程序运行后,在文本框中每输入一个字符,都会立即在标签中显示文本框中字符的个数。下列可以实现上述操作的事件过程是
41、( )APrivate Sub Text1_Change()Label1.Caption=Str(Len(Text1.Text)End SubBPrivate Sub Text1_Click()Label1.Caption=str(Len(Text1.Text)End SubCPrivate Sub Text1_Change()Label1.Caption=Text1.TextEnd SubDPrivate Sub Label1_Change()Label1.Caption=Str(Len(Text1.Text)End Sub(分数:2.00)A. B.C.D.解析:解析 为使文本框中每输入一
42、个字符时,标签即能显示其字符个数,可编写文本框的 Change 事件过程。Len()函数可用于取得字符串的长度。16.在窗体上画两个单选按钮(名称分别为 Option1、Option2,标题分别为“宋体”和“黑体”)、1 个复选框(名称为 Check1,标题为“粗体”)和 1 个文本框(名称为 Text1,Text 属性为“改变文字字体”),窗体外观如右图所示。程序运行后,要求“宋体”单选钮和“粗体”复选框被选中,则下列能够实现上述操作的语句序列是( )(分数:2.00)A.B.C.D. 解析:解析 容器(如窗体和框架)中的单选钮(Option Button)组常用于提供多个选项间的唯一选择,
43、其Value 属性用于设置或返回每个单选钮的选中状态:值为 False 表示未选,值为 True 表示选中。复选框(CheckBox)组常用于提供多个选项间的多重选择,Value 属性值决定每个复选框的选中状态:0-UnChecked 为未选,1-Checked 为选中,2-Grayed 为禁用(以灰色呈现)。17.在窗体上画一个名称为 Command1 的命令按钮,然后编写下列事件过程:Private Sub Command1_Click()c=1234c1=Trim(Str(c)For i=1 To 4PrintNextEnd Sub程序运行后,单击命令按钮,要求在窗体上显示下列内容:11
44、21231234则在横线处应填入的内容为( )ARight(cl,i) BLeft(c1,i) CMid(c1,i,1) DMid(c1,i,i)(分数:2.00)A.B. C.D.解析:解析 Str()函数可将数值数据转换为字符串数据,转换时总会在数字前保留一个空位来表示正负,如果数值为正,返回的字符串包含一个前导空格暗示有一个正号。Trim$(字符串)函数用于去掉“字符串”两边的空白字符。从本题显示结果可知,在 For 循环中窗体上每次显示的是字符串“1234”的前 i 个字符(i 为循环变量)。故答案为选项 B。18.假定有下列程序段:For i=1 TO 3For j=5 To 1 S
45、tep-1Print i*jNextjNext i则语句 Print i*j 的执行次数是( )A15 B16 C17 D18(分数:2.00)A. B.C.D.解析:解析 ForNext 循环语句可提供一个重复执行的语句序列,遵循“先检查,后执行”的规则,执行过程中,循环次数=Int(终值-初值)/步长+1。本题代码是一个嵌套的 For 循环,其中每次执行内循环时的循环次数(Int(1-5)/-1)+15,外循环的循环次数为 3,因此执行循环体语句:PrintI*J 的次数为 15 次。19.在窗体上画两个文本框(名称分别为 Text1 和 Text2)和一个命令按钮(名称为 Command
46、1),然后编写下列事件过程:Private Sub Command1_Click()x=0DO While x50x=(x+2)*(x+3)n=n+1LoopText1.Text=Str(n)Text2.Text=Str(x)End Sub程序运行后,单击命令按钮,在两个文本框中显示的值分别为( )A1 和 0 B2 和 72 C3 和 50 D4 和 168(分数:2.00)A.B. C.D.解析:解析 Do while1 UntilLoop 循环语句的执行过程是:如果条件为真(True),则执行语句块,当执行到 Loop 语句时,将返回到 While 语句并对“条件”再次进行判断,如果仍为
47、真(True),则重复前述过程。如果条件为假(False),则不执行语句块,而执行 Loop 之后的语句。本题第 1 次执行循环体后 x、n 的值分别为 6 和 1,第 2 次执行循环体后 x、n 的值分别为 72 和 2,此时While 语句“条件”为假,将 n、x 的值在文本框中显示。20.阅读程序:Private Sub Form_Click()a=0For j=1 To 15a=a+j Mod 3NextjPrint aEnd Sub程序运行后,单击窗体,输出结果是( )A105 B1 C120 D15(分数:2.00)A.B.C.D. 解析:解析 取模(Mod)运算符的功能是取两数相
48、除的余数部分,常用于判断一个整数能否被另一个整数整除。本题源程序通过 For 循环将 115 间的所有整数与 3 相除所得的余数累加,结果为 15。21.下列说法中正确的是( )A当焦点在某个控件上时,按下一个字母键,就会执行该控件的 KeyPress 事件过程B因为窗体不接受焦点,所以窗体不存在自己的 KeyPress 事件过程C若按下的键相同,KeyPress 事件过程中的 KeyAscii 参数与 KeyDown 事件过程中的 KeyCode 参数的值也相同D在 KeyPress 事件过程中,KeyAscii 参数可以省略(分数:2.00)A. B.C.D.解析:解析 键盘事件是在对象具有焦点时,按下键盘上的键时触发的事件,常见的有 KeyDown、KeyUp和 KeyPress。当用户按下并释放一个可打印的键盘字符时,Key