2010年3月全国计算机等级考试二级VB笔试试卷(含参考答案)一、选择题(每题2分,共70分)(1)下列叙述中正确的是()A)对长度为n的有序链表进行查找,最坏情况下需要比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数(nlog2n)(2)算法的时间复杂是指()A)算法的执行时间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的基本运算次数(3)软件按功能可以分为:应用软件、系统软件和支持软件(或工具软件),下面属于系统软件的是()A)编辑软件B)操作系统C)教务管理系统D)浏览器(4)软件(程序)调试的任务是()A)诊断和改正程序中的错误B)进肯能多的发现程序中的错误C)发现并改正程序中的所有错误D)确定程序中错误的性质(5)数据流程图(DFD图)是()A)软件概要设计的工具B)软件详细设计的工具C)机构化方法的需求分析工具D)面向对象方法的需求分析工具(6)软件生命周期可以分为定义阶段,开发阶段和维护阶段。详细设计属于()A)定义阶段B)开发阶段C)维护阶段D)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:则由关系R得到关系T的操作是A)选择B)投影C)交D)并(11)在VB集成环境中要结束一个正在运行的工程,可单击工具栏上的一个按钮,这个按钮是(12)设x是整型变量,与函数Ⅱf(x0,-x,x)有相同结果的代数式是A)|x|B)-|x|C)xD)-x(13)设窗体文件中有下面的事件过程:PrivateSubCommand1_Click()Dimsa%=100PrintaEndSub其中变量a和s的数据类型分别是A)整型,整型B)变体型,变体型C)整型,变体型D)变体型,整型(14)下面哪个属性肯定不是框架控件的属性A)TextB)CaptionC)LeftD)Enabled(15)下面不能在信息框中输出“VB”的是A)MsgBoxVBB)x=MsgBox(VB)C)MsgBox(VB)D)CallMsgBoxVB(16)窗体上有一个名称为Option1的单选按钮数组,程序运行时,当单击某个单选按钮时,会调用下面的事件过程PrivateSubOption1_C1ick(IndexAsInteger)…EndSub下面关于此过程的参数Index的叙述中正确的是A)Index为1表示单选按钮被选中,为O表示未选中B)Index的值可正可负C)Index的值用来区分哪个单选按钮被选中D)Index表示数组中单选按钮的数量(17)设窗体中有一个文本框Text1,若在程序中执行了Text1.SetFocus,则触发A)Text1的SetFocus事件B)Text1的GotFocus事件C)Text1的LostFocus事件D)窗体的GotFocus事件(18)VB中有3个键盘事件:KeyPress、KeyDown、KeyUp,若光标在Text1文本框中,则每输入一个字母A)这3个事件都会触发B)只触发KeyPress事件C)只触发KeyDown、KeyUp事件D)不触发其中任何一个事件(19)下面关于标准模块的叙述中错误的是A)标准模块中可以声明全局变量B)标准模块中可以包含一个SubMain过程,但此过程不能被设置为启动过程C)标准模块中可以包含一些Public过程D)一个工程中可以含有多个标准模块(20)设窗体的名称为Form1,标题为Win,则窗体的MouseDown事件过程的过程名是A)Form1_MouseDownB)Win_MouseDownC)Form_MouseDownD)MouseDown_Form1(21)下面正确使用动态数组的是A)Dimarr()AsInteger…ReDimarr(3,5)B)Dimarr()AsInteger…ReDimarr(50)AsStringC)Dimarr()…ReDimarr(50)AsIntegerD)Dimarr(50)AsInteger…ReDimarr(20)(22)下面是求最大公约数的函数的首部Functiongcd(ByValxAsInteger,ByValyAsInteger)AsInteger若要输出8、12、16这3个数的最大公约数,下面正确的语句是A)Printgcd(8,12),gcd(12,16),gcd(16,8)B)Printgcd(8,12,16)C)Printgcd(8),gcd(12),gcd(16)D)Printgcd(8,gcd(12,16))(23)有下面的程序段,其功能是按图1所示的规律输出数据Dima(3,5)AsIntegerFori=1To3Forj=1To5A(i,j)=i+jPrinta(i,j);NextPrintNext若要按图2所示的规律继续输出数据,则接在上述程序段后面的程序段应该是A)Fori=1To5Forj=1To3Printa(j,i);NextPrintNextB)Fori=1To3Forj=1To5Printa(j,i);NextPrintNextC)Forj=1To5Fori=1To3Printa(j,i);NextPrintNextD)Fori=1To5Forj=1To3Printa(i,j);NextPrintNext(24)窗体上有一个Text1文本框,一个Command1命令按钮,并有以下程序PrivateSubCommandl_Click()DimnIfText1.Text23456Thenn=n+1Print口令输入错误&n&次EndIfEndSub希望程序运行时得到左图所示的效果,即:输入口令,单击“确认口令”命令按钮,若输入的口令不是“123456”,则在窗体上显示输入错误口令的次数。但上面的程序实际显示的是右图所示的效果,程序需要修改。下面修改方案中正确的是A)在Dimn语句的下面添加一句:n=OB)把Print口令输入错误&n&次改为Print口令输入错误+n+次C)把Print口令输入错误&n&次改为Print口令输入错误&Str(n)&次D)把Dimn改为Staticn(25)要求当鼠标在图片框P1中移动时,立即在图片框中显示鼠标的位置坐标。下面能正确实现上述功能的事件过程是A)PrivateSubP1_MouseMove(ButtonASInteger,ShiftAsInteger,XAsSingle,YAsSingle)PrintX,YEndSubB)PrivateSubP1_MouseDown(ButtonASInteger,ShiftAsInteger,XAsSingle,YAsSingle)Picture.PrintX,YEndSubC)PrivateSubP1_MouseMove(ButtonASInteger,ShiftAsInteger,XAsSingle,YAsSingle)P1.PrintX,YEndSubD)PrivateSubForm_MouseMove(ButtonASInteger,ShiftAsInteger,XAsSingle,YAsSingle)P1.PrintX,YEndSub(26)计算二的近似值的一个公式是。某人编写下面的程序用此公式计算并输出π的近似值:PrivateSubComand1_Click()PI=1Sign=1n=20000Fork=3TonSign=-Sign/kPI=PI+Sign/kNextkPrintPI*4EndSub运行后发现结果为3.22751,显然,程序需要修改。下面修改方案中正确的是A)把Fork=3Ton改为Fork=1TonB)把n=20000改为n=20000000C)把Fork=3Ton改为Fork=3TonStep2D)把PI=1改为PI=0(27)下面程序计算并输出的是PrivateSubComand1_Click()a=10s=0Dos=s+a*a*aa=a-1LoopUntila=0PrintsEndSubA)13+23+33+…+103的值B)10!+…+3!+2!+1!的值C)(1+2+3+…+10)3的值D)10个103的和(28)若在窗体模块的声明部分声明了如下自定义类型和数组PrivateTyperecCodeAsIntegerCaptionAsStringEndTypeDimarr(5)Asrec则下面的输出语句中正确的是A)Printarr.Code(2),arr.Caption(2)B)Printarr.Code,arr.CaptionC)Printarr(2).Code,arr(2).CaptionD)PrintCode(2),Caption(2)(29)设窗体上有一个通用对话框控件CD1,希望在执行下面程序时,打开如图所示的文件对话框PrivateSubComand1_Click()CD1.DialogTitle=打开文件CD1.InitDir=C:\CD1.Filter=所有文件|*.*|Word文档|*.doc|文本文件|*.TxtCD1.FileName=CD1.Action=1IfCD1.FileName=ThenPrint未打开文件ElsePrint要打开文件&CD1.FileNameEndIfEndSub但实际显示的对话框中列出了C:\下的所有文件和文件夹,“文件类型”一栏中显示的是“所有文件”。下面的修改方案中正确的是A)把CD1.Action=1改为CD1.Action=2B)把“CD1.Filter=”后面字符串中的“所有文件”改为“文本文件”C)在语句CD1.Action=1的前面添加:CD1.FilterIndex=3D)把CD1.FileName=改为CD1.FileName=文本文件(30)下面程序运行时,若输入395,则输出结果是PrivateSubComand1_Click()Dimx%x=InputBox(请输入一个3位整数)PrintxMod10,x\100,(xMod100)\10EndSubA)395B)539C)593D)359(31)窗体上有List1、List2两个列表框,List1中有若干列表项(见图),并有下面的程序:PrivateSubComand1_Click()Fork=List1.ListCount-1To0Step-1IfList1.Selected(k)ThenList2.AddItemList1.List(k)List1.RemoveItemkEndIfNextkEndSub程序运行时,按照图示在List1中选中2个列表项,然后单击Commandl命令按钮,则产生的结果是A)在List2中插入了“外语”、“物理”两项B)在List1中删除了“外语”、“物理”两项C)同时产生A)和B)的结果D)把List1中最后1个列表项删除并插入到List2中(32)设工程中有2个窗体:Form1、Form2,Form1为启动窗体。Form2中有菜单。其结构如表。要求在程序运行时,在Form1的文本框Text1中输入口令并按回车键(回车键的ASCII码为13)后,隐藏Form1,显示Form2。若口令为“Teacher”,所有菜单项都可见;否则看不到“成绩录入”菜单项。为此,某人在Form1窗体文件中编写如下程序:PrivateSubText1_KeyPress(KeyAsciiAsInteger)IfKeyAscii=13ThenIfText1.Text