《2008年3月计算机等级考试二级-VB笔试真题及答案(共9页).doc》由会员分享,可在线阅读,更多相关《2008年3月计算机等级考试二级-VB笔试真题及答案(共9页).doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上2008年4月全国计算机等级考试二级VB试卷一、选择题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
2、)算法只能被有限的用户使用6、对长度为n的线性表排序,在最坏的情况下,比较次数不是n (n-1)/2的排序方法是A)快速排序 B)冒泡排序 C)直接插入排序 D)堆排序 7、下列关于栈的叙述正确的是A)栈按“先进先出”组织数据 B)栈按“先进后出”组织数据 C)只能在栈底插入数据 D)不能删除数据8、在数据库设计中,将ER图转换成关系数据模型的过程属于A)需求分析阶段 B)概念设计阶段 C)逻辑设计阶段 D)物理设计阶段9、有三个关系R、S和T如下:BCDa0k1B1n1RSTBCDf3h2a0k1n2x1BCDa0k1 由关系和S通过运算得到关系T,则所使用的运算为A)并 B)自然连接 C)
3、笛卡尔积 D)交10、设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为)课号,成绩 B)学号,成绩 C)学号,课号 D)学号,姓名,成绩11、以下叙述中错误的是)标准模块文件的扩展名是.bas B)标准模块文件是纯代码文件C)在标准模块中声明的全局变量可以在整个工程中使用 D)在标准模块中不能定义过程12、在Visual Basic中,表达式3* 25 Mod 3的值是)B)C)D)出现错误提示13、以下选项中,不合法的Visual Basic变量名是)a5b B)_xyz C)a_b D)an
4、dif14、 以下数组定义语句中,错误的是)Static a (10) As Integer B) Dim c (3, 1 to 4)C) Dim d (-10) D) Dim b (0 to 5, 1 to 3) As Integer15、现有语句:y=IIf(x0, x Mod 3, 0) ,设x=10,则y的值是)B)C)D)语句有错16、为了使文本框同时具有垂直和水平滚动条,应先把MultiLine属性设置为True,然后再把Scrollbars属性设置为) B) C)D)17、文本框Text1的KeyDown事件过程如下:Private SubText1_ KeyDown(KeyCo
5、de As Integer, Shift As Integer)End Sub其中参数KeyCode的值表示的是发生此事件时)是否按下了Alt键或Ctrl键B)按下的是哪个数字键C)所按的键盘键的键码D)按下的是哪个鼠标键18、窗体上有一个名称为Hscroll1的滚动条,程序运行后,当单击滚动条两端的箭头时,立即在窗体上显示滚动框的位置(即刻度值)。下面能够实现上述操作的事件过程是)Private Sub Hscroll1_Changc() B)Private Sub Hsctroll1_Change() Print HScroll1.Value Print HScroll1.SmallCha
6、ngeEnd Sub End SubC)Private Sub HScroll1_Scroll() D)Private Sub HScroll1_Scroll() Print HScroll1.Value Print HScroll1.SmallChangeEnd Sub End Sub19、 若已把一个命令按钮的Default属性设置为True,则下面可导致按钮的Click事件过程被调用的操作是)用鼠标右键单击此按钮 B)按键盘上的Esc键C)按键盘上的回车键D)用鼠标右键双击此按钮20、要使两个单选按钮属于同一个框架,正确的操作是)先画一个框架,再在框架中画两个单选按钮B)先画一个框架,再
7、在框架外画两个单选按钮,然后把单远按钮拖到框架中C)先画两个单选按钮,再画框架将单选按钮框起来D)以上三种方法都正确21、能够存放组合框的所有项目内容的属性是)Caption B)Text C)List D)Selected22、 设窗体上有一个标签Labell和一个计时器Timer1,Timer1的Interval属性被设置为1000,Enabled属性被设置为True。要求程序运行时每秒在标签中显示一次系统当前时间。以下可以实现上述要求的事件过程是)Private Sub Timer1_Timer() B) Private Sub Timer1_Timer() Label1.Caption
8、=True Label1.Caption=Time$End Sub End SubC) Private Sub Timer1_Timer() D) Private Sub Timer1_Timer() Label1.Interval=1 For k = l To Timer1.IntervalEnd Sub Label1.Caption=Timer Next k End Sub23、 设有如图所示窗体和以下程序:Private Sub Command1_Click()Textl.Text=“Visual Basic” End SubPrivate Sub Text1_LostFocus()If
9、 Text1.Text “BASIC”ThenText1.Text=”Text1.SetFocusEnd IfEnd Sub程序运行时,在Text1文件框中输入“Basic”(如图所示),然后单击Command1按钮,则产生的结果是)文本框中无内容,焦点在文本框中 B)文本框中为“Basic”,焦点在文本框中C)文本框中为“Basic”,焦点的按钮上 D)文本框中为“Visual Basic”,焦点的按钮上24、窗体上有一个名称为Command1的命令按钮,其事件过程如下:Private Sub Command1_Click()x=“VisualBasicProgramming”a=Right
10、(x,11)b=Mid(x,7,5)C=Msgbox(a, , b)End Sub运行程序后单击命令按钮,以下叙述中错误的是)信息框的标题是Basic B)信息框中的提示信息是ProgrammingC) C的值是函数的返回值D)MsgBox的使用格式有错25、设工程文件包含两个窗体文件Form1.frm、Form2.frm及一个标准模块文件Module1.bas,两个窗体上分别只有一个名称Command1的命令按钮。Form1的代码如下:Public X As IntegerPrivate Sub Form_load()x=1y=5End SubPrivate Sub Command1_Cli
11、ck() Form2.ShowEnd SubForm2的代码如下:Private Sub Command1_Ciick()Print Form1.x,yEnd SubModule1的代码如下:Public y As Integer运行以上程序,单击Form1的命令按钮Command1,则显示Form2;再单击Form2上的命令按钮Command1,则窗体上显示的是) B) C) D)程序有错26、窗体上有一个名称Text1的文本框,一个名称为Command1的命令按钮。窗体文件的程序如下:Private Type xa As Integerb AS IntegerEnd TypePrivate
12、 Sub Command1_Click()Dim y As xy.a = InputBox(“”)If y.a2=y.a/2 Theny.b=y.a*y.aElsey.b = Fix(y.a/2)End IfText1.Text=y.bEnd Sub对以上程序,下列叙述中错误的是)x是用户定义的类型 B)InputBox函数弹出的对话框中没有提示信息C)若输入的是偶数,y.b的值为该偶数的平方D)Fix(y.a/2)把y.a/2的小数部分四舍五入,转换为整数返回27、窗体上有一个名称为CD1的通用对话框控件和由四个命令按钮组成的控件数Command1,其下标从左到右分别为0、1、2、3,窗体外
13、观如图所示。命令按钮的事件过程如下:Private Sub Command1_Click(Index As Integer)Select Case IndexCase 0CD1.Action=1Case 1CD1.ShowSaveCase 2CD1.Action=5Case 3EndEnd SelectEnd Sub对上述程序,下列叙述中错误的是)单击“打开”按钮,显示打开文件的对话框B)单击“保存”按钮,显示保存文件的对话框C)单击“打印”按钮,能够设置打印选项,并执行打印操作D)单击“退出”按钮,结束程序的运行28、窗体上有两个水平滚动条HV、HT,还有一个文本框Text1和一个标题为“计
14、算”的命令按钮Command1,并编写了以下程序:Private Sub Command1_ClickOCall Cale (HV.Value, HT.Value) End SubPublic Sub Cale(x AS Integer , y AS Integer) Text1.Text = x* yEnd Sub运行程序,单击“计算”按钮,可根据速度与时间计算出距离,并显示计算结果。对以上程序,下列叙述中正确的是)过程调用语句不对,应为Cale (HV,HT)B) 过程定义语句的形式参数不对,应为Sub Cale(x As Control , y As Control)C) 计算结果在文本
15、框中显示出来D)程序不能正确运行29、现有如下程序:Private Sub Command1_ Click()S=0For i=1 to 5S=S+f(5+i)Next Print SEnd SubPublic Function f(x As Integer)If x=10 Thent=x+1Else t=x+2End Iff=tEnd Function运行程序,则窗体上显示的是)38B)49C)61D)7030、窗体上有一个用菜单编辑器设计的菜单(见上图)。运行程序,并在窗体上单击鼠标右键,则弹出一个快捷菜单,如图所示。以下叙述中错误的)在设计“粘贴”菜单项时,在菜单编辑器窗口中设置了“有效
16、”属性(有“”)B)菜单中的横线是在该菜单项的标题输入框中输入了一个“”(减号)字符C)在设计“选中”菜单项时,在菜单编辑器窗口中设置了“复选”属性(有“”)D)在设计该弹出菜单的主菜单项时,在菜单编辑器窗口中去掉了“可见”前面的“”31、窗体上有一个名称为Picture1图片框控件,一个名称Label1的标签控件。如图所示。现有如下程序:Public Sub display (x As Control)If TypeOf x is Label Then x.Caption=“计算机等级考试”Else x.Picture = Loadpicture(“pic.jpg”)EndIfEnd Sub
17、Private Sub Label1_Click() Call display(Label1)End SubPrivate Sub Picture1_Click()Call display(Picture1)End Sub对以上程序,下列叙述中错误的是)程序运行时会出错B)单击图片框,在图片框中显示一幅图片C)过程中的X是控件变量 D)单击标签,在标签中显示一串文字32、窗体上有两个名称分别为Text1、Text2的文本框。Text1的KeyUp的事件过程如下:Private Sub Text1_KeyUp(KeyCode As Integer , shift AS Integer)Dim C
18、 AS stringTcxt2.Text=Chr(Asc(c)+2)End Sub当向文本框Text1中输入小写字母a时,文本框Text2中显示的是) B)a C)C D)c33、设窗体上有一个文体框Text1和一个命令按钮Command1,并有以下事件过程:Private Sub Command1_Click()Dim S As String , ch As StringS=“”For k=1 TO Len(Text1) ch = Mid(Text1,k,l)S=ch+SNext kText1.Text=SEnd Sub程序执行时,在文本框中输入“Basic”,然后单击命令按钮,则Text1
19、中显示的是A)Basic B)cisaB C)BASIC D)CISAB34、某人编写了如下程序,用来求10个整数(整数从键盘输入)中的最大值:Private Sub Command1_Click()Dim a(10) As Integer, max As IntegerFor k=1 TO 10a(K)=InputBox(“输入一个整数”)Next kMax=0For k=1 To 10If a(k)max ThenMax = a(k)End IfNext kPrint maxEnd Sub运行程序时发现,当输入10个正数时,可以得到正确结果,但输入10个负数时结果是错误的,程序需要修改,下
20、面的修改中可以得到正确运行结果的是A) 把If a(k)max Then改为If a(k)max Then B) 把max = a(k)改为a(k)=maxC) 把第2个循环语句For k=1 TO 10改为For k=2 TO 10 D) 把max=0改为max = a(10)35、已知在4行3列的全局数组score(4,3)中存放了4个学生3门课程的考试成绩(均为整数)。现需要计算每个学生的总分,某人编写程序如下:Option Base 1Private Sub Command1_Click() Dim sum As IntegerSum=0 For i=1 To 4 For j=1 To
21、 3 Sum = sum + score(i,j)Next jPrint“第”&i&”个学生的总分是:”;sumNext iEnd Sub运行此程序时发现,除第1个人的总分计算正确外,其他人的总分是错误的。程序需要修改。以下修改方案中正确的是A) 把外层循环语句For i=1 TO 4改为For i=1 To 3 内层循环语句For j=1 TO 3 改为For j=1 TO 4 B) 把sum=0移到For i=1 TO 4 和For j=1 TO 3之间 C)把sum = sum+score(i,j)改为sum=sum+score(j,i) D) 把sum=sum+score(i,j)改为
22、sum=score(i,j)二、填空题(1)测试用例包括输入值集和1 值集。(2)深度为5的满二叉树有2 个叶子结点。(3)设某循环队列的容量为50,头指针Front=5 (指向队头元素的前一位置),尾指针rear=29(指向队尾元素),则该循环队列中共有3 个元素。(4)在关系数据库中,用来表示实体之间联系的是4 。(5)在数据库管理系统提供的数据定义语言、数据操纵语言和数据控制语言中,5 负责数据的模式定义与数据的物理存取构建。(6)设有以下的循环:要求程序运行时执行3次循环体,请填空。x=1DOx=x+2Print xLoop Until 6 (7)窗体上命令按钮Command1的事件过
23、程如下:Private Sub Command1_Click() Dim total As Integer total = s(1)+s(2)Print totalEnd SubPrivate Function s(m As Integer) As Integer Static x As Integer For i =1 To m x=x+1 Next i S=xEnd Function运行程序,第3次单击命令按钮Command1时,输出结果为 7(8)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:Option Base lPrivate Sub Command1_Clic
24、k()Dim a(10) As IntegerFor i=1 To 10a(i)=iNextCall swap ( 8 )For i=1 To 10Print a(i)NextEnd SubSub swap (b() As Integer) n= 9 For i=1 To n/2t=b(i)b(i)=b(n)b(n)=t 10 NextEnd Sub上述程序的功能是,通过调用过程swap,调换数组中数值的存放位置,即a(1)与a(10)的值互换,a(2)与a(9)的值互换,请填空。(9)在窗体上面一个通用对话框,其名称为CommonDialog1,然后画一个命令按钮,并编写如下事件过程:Pri
25、vate Sub Command1_Click()CommonDialog1.Filter=“All Files(*.*)|*.*|Text Files”_ &”(*.txt)|*.txt|Batch Files(*.bat)|*.bat” CommonDialog1 Filterlndex=1Commondialog1.ShowOpenMsgBox CommonDialog1.File NameEnd Sub程序运行后,单击命令按钮,将显示一个“打开”对话框,此时在“文件类型”框中显示的是 11;如果在对话框中选择d盘temp目录下的tel.txt文件,然后单击“确定”按钮,则在MsgBox信息框中显示的提示信息是 12 。(10)以下程序的功能是:把程序文件smtext1.txt的内容全部读入内存,并在文本框Text1中显示出来。请填空。Private Sub Command1_Click() Dim inData As String Text1.Text=“”Open“smtext1.txt” 13 As 14 Do While 15 Input#2, inData Text1.Text=Text1.Text& inDataLoopClose #2End Sub 专心-专注-专业
限制150内