全国计算机等级二级vb考试试题

全国计算机等级二级vb考试试题

ID:83018187

大小:369.82 KB

页数:93页

时间:2023-07-04

上传者:用户名
全国计算机等级二级vb考试试题_第1页
全国计算机等级二级vb考试试题_第2页
全国计算机等级二级vb考试试题_第3页
全国计算机等级二级vb考试试题_第4页
全国计算机等级二级vb考试试题_第5页
全国计算机等级二级vb考试试题_第6页
全国计算机等级二级vb考试试题_第7页
全国计算机等级二级vb考试试题_第8页
全国计算机等级二级vb考试试题_第9页
全国计算机等级二级vb考试试题_第10页
资源描述:

《全国计算机等级二级vb考试试题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

2002年9月二级VB(1)在设计阶段,当双击窗体上的某个控件时,所打开的窗口是A)工程资源管理器窗口B)工具箱窗口C)代码窗口D)属性窗口(2)以下叙述中正确的是A)窗体的Name属性指定窗体的名称,用来标识一个窗体B)窗体的Name属性的值是显示在窗体标题栏中的文本C)可以在运行期间改变对象的Name属性的值D)对象的Name属性值可以为空(3)刚建立一个新的标准EXE工程后,不在工具箱中出现的控件是A)单选按钮B)图片框C)通用对话框D)文本框(31)以下叙述中错误的是A)一个工程中只能有一个SubMain过程B)窗体的Show方法的作用是将指定的窗体装入内存并显示该窗体C)窗体的Hide方法和Unload方法的作用完全相同D)若工程文件中有多个窗体,可以根据需要指定一个窗体为启动窗体(32)以下叙述中错误的是A)一个工程中可以包含多个窗体文件B)在一个窗体文件中用Private定义的通用过程能被其他窗体调用C)在设计VB程序时,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件D)全局变量必须在标准模块中定义2003年4月二级VB(1)以下不能在"工程资源管理器”窗口中列出的文件类型是A).BasB).ResC).FrmD).Ocx(2)以下关于窗体的描述中,错误的是A)执行UnloadForrnl语句后,窗体Forml消失,但仍在内存中B)窗体的Load事件在加载窗体时发生C)当窗体的Enabled属性为False时,通过鼠标和键盘对窗体的操作都被禁止D)窗体的Height、Width属性用于设置窗体的高和宽2003年9月二级VB(1)以下叙述中错误的是A)VisualBasic是事件驱动型可视化编程工具B)VisualBasic应用程序不具有明显的开始和结束语句C)VisualBasic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性D)VisualBasic中控件的某些属性只能在运行时设置(2)以下叙述中错误的是A)在工程资源管理器窗口中只能包含一个工程文件及属于该工程的其他文件B)以.BAS为扩展名的文件是标准模块文件C)窗体文件包含该窗体及其控件的属性D)一个工程中可以含有多个标准模块文件(4)以下不属于VisualBasic系统的文件类型是A).FrmB).BatC).VbgD).Vbp(5)以下叙述中错误的是A)打开一个工程文件时,系统自动装入与该工程有关的窗体、标准模块等文件B)保存VisualBasic程序时,应分别保存窗体文件及工程文件C)VisualBasic应用程序只能以解释方式执行D)事件可以由用户引发,也可以由系统引发(13)如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是

1A)如果工程中含有SubMain过程,则程序一定首先执行该过程B)不能把标准模块设置为启动模块C)用Hide方法只是隐藏一个窗体,不能从内存中清除该窗体D)任何时刻最多只有一个窗体是活动窗体2005年9月二级VB(11)假定一个VisualBasic应用程序由一个窗体模块和一个标准模块构成。为了保存该应用程序,以下正确的操作是A)只保存窗体模块文件B)分别保存窗体模块、标准模块和工程文件C)只保存窗体模块和标准模块文件D)只保存工程文件(12)为了清除窗体上的一个控件,下列正确的操作是A)按回车键B)按Esc键C)选择(单击)要清除的控件,然后按Del键D)选择(单击)耍清除的控件,然后按回车键(13)以下叙述中错误的是A)打开一个工程文件时,系统自动装入与该工程有关的窗体、标准模块等文件B)当程序运行时,双击一个窗体,则触发该窗体的Dblclick事件C)VisualBasic应用程序只能以解释方式执行D)事件可以由用户引发,也可以由系统引发(33)如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是A)任何时刻最多只有一个窗体是活动窗体B)不能把标准模块设置为启动模块C)用Hide方法只是隐藏•个窗体,不能从内存中清除该窗体D)如果工程中含有SubMain过程,则程序一定首先执行该过程二、常用控件2002年9月二级VB(11)以下能够触发文本框Change事件的操作是A)文本框失去焦点B)文本框获得焦点C)设置文本框的焦点D)改变文本框的内容(12)在窗体上有一个文本框控件,名称为Txttime:一个计时器控件,名称为TimerL要求每•一秒钟在文本框中显示•次当前的时间。程序为:PrivateSubTimer1()Txttime.Text=TimeEndSub在下划线上应填入的内容是A)EnabledB)VisibleC)IntervalD)Timer(13)在窗体上画两个单选按钮,名称分别为Optionl、Option2,标题分别为“宋体”和“黑体”;一个复选框,名称为Check1,标题为“粗体”:一个文本框,名称为Textl,Text属性为“改变文字字体”。要求程序运行时,“宋体”单选按钮和“粗体”复选框被选中(窗体外观如下图),则能够实现上述要求的语句序列是

2A)Option!.Value=TrueCheck1.Value=FalseB)Option1.Value=TrucCheckl.Value=TrueC)Option2.Value=FalseD)Option1.Value=TrueCheck1.Value=TrueCheckl.Value=l(14)为了在按下Esc键时执行某个命令按钮的Click事件过程,需要把该命令按钮的一个属性设置为True,这个属性是A)ValueB)DefaultC)CancelD)Enabled(16)图像框有一个属性,可以自动调整图形的大小,以适应图像框的尺寸,这个属性是A)AutosizeB)StretchC)AutoredrawD)Appearance(26)以下叙述中错误的是A)在Keyup和Keydown事件过程中,从键盘上输入A或a被视作相同的字母(即具有相同的Keycode)B)在Keyup和Keydown事件过程中,将键盘上的“1”和右侧小键盘上的力”视作不同的数字(具有不同的Keycode)C)Keypress事件中不能识别键盘上某个键的按下与释放D)Keypress事件中可以识别键盘上某个键的按下与释放(27)以下叙述中错误的是A)在同•窗体的菜单项中,不允许出现标题相同的菜单项B)在菜单的标题栏中,所引导的字母指明了访问该菜单项的访问键C)程序运行过程中,可以重新设置菜单的Visible属性D)弹出式菜单也在菜单编辑器中定义(28)设在菜单编辑器中定义了一个菜单项,名为Menul。为了在运行时隐藏该菜单项,应使用的语句是A)Menu1.Enabled=TrueB)Munu1.Enabled=FalseC)Menu1.Visible=TrueD)Menu1.Visible=False(29)以下叙述中错误的是A)在程序运行时,通用对话框控件是不可见的B)在同一个程序中,用不同的方法(如Showopen或Showsave等)打开的通用对话框具有不同的作用C)调用通用对话框控件的Showopen方法,可以直接打开在该通用对话框中指定的文件D)调用通用对话框控件的Showcolor方法,可以打开颜色对话框(30)在用通用对话框控件建立“打开”或“保存”文件对话框时,如果需要指定文件列表框所列出的文件类型是文本文件(即.Txt文件),则正确的描述格式是A)“Text(.Txt)|*.Txt)“B)”文本文件(.Txt)|(.Txt)”C)“Text(.Txt)||(*.Txt)”D)“Text(.Txt)(*.Txt)”2003年4月二级VB(9)表示滚动条控件取值范围最大值的属性是A)MaxB)LargechangeC)ValueD)Max-Min(10)在窗体上画一个名称为Listl的列表框,一个名称为Label1的标签。列表框中显示若干城市的名称。当单击列

3表框中的某个城市名时,在标签中显示选中城市的名称。下列能正确实现上述功能的程序是A)PrivateSubListl_Click()B)PrivateSubListl_Click()

4Label1.Caption=List1.ListindexEndSubLabel1.Name=Listl.ListindexEndSubC)PrivateSubListl_Click()Label1.Name=Listl.TextEndSubD)PrivateSubListl_Click()Label1.Caption=Listl.TextEndSub(12)以下关于菜单的叙述中,错误的是A)在程序运行过程中可以增加或减少菜单项B)如果把一个菜单项的Enabled属性设置为False,则可删除该菜单项C)弹出式菜单在菜单编辑器中设计D)利用控件数组可以实现菜单项的增加或减少(13)在窗体上画三个单选按钮,组成一个名为Chkoption的控件数组。用于标识各个控件数组元素的参数是A)TagB)IndexC)ListindexD)Name(19)在窗体上画一个名称为Txta的文本框,然后编写如下的事件过程:PrivateSubTxta_Kcypress(KcyasciiAsInteger)EndSub若焦点位于文本框中,则能够触发Keypress事件的操作是A)单击鼠标B)双击文本框C)鼠标滑过文本框D)按下键盘上的某个键(21)假定有如下事件过程:PrivateSubForm_Mousedown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2ThenPopupmenuPopfbrmEndIfEndSub则以下描述中错误的是A)该过程的功能是弹出一个菜单A)Popform是在菜单编辑器中定义的弹出式菜单的名称C)参数X、Y指明鼠标的当前位置D)Button=2表示按卜的是鼠标左键(30)在窗体上画一个名称为Commondialogl的通用对话框,一个名称为Command1的命令按钮。要求单击命令按钮时,打开一个保存文件的通用对话框。该窗口的标题为“Save”,缺省文件名为“Saveflle”,在“文件类型”栏中显示*.Txt。则能够满足上述要求的程序是A)PrivateSubCommand1_Click()Commondialog1.Filename=HSavefileMCommondialog1.Filter="AllFiles|*.*|(*.Txt)|*.Txt|(*.Doc)|*.DocHCommondialog1.Filterindex=2Commondialog1.Dialogtitle="Save”Commondialog1.Action=2EndSubB)PrivateSubCommandl_Click()Commondialog1.Filename=HSavefileHCommondialogl.Filter=nAllFiles|*.*|(*.Txt)|*.Txt|(*.Doc)|*.DocnCommondialogl.Filterindex=1Commondialog1.Dialogtitle="Save”Commondialog1.Action=2EndSubC)PrivateSubCommandl_Click()Commondialog1.Filename="Save”Commondialog1.Filter="AHFiles|*.*|(*.Txt)|*.Txt|(*.Doc)|*.DocM

5Commondialog1.Filterindex=2Commondialog1.Dialogtitle="Savefile"Commondialog1.Action=2EndSubA)PrivateSubCommandl_Click()Commondialog1.Filename="SavefileMCommondialog1.Filter=MA11Files|*.*|(*.Txt)|*.Txt|(*.Doc)|*.DocMCommondialog1.Filterindex=1Commondialog1.Dialogtitle="Save"Commondialog1.Action=1EndSub2003年9月二级VB(3)以下叙述中错误的是A)双击鼠标可以触发Dblclick事件B)窗体或控件的事件的名称可以由编程人员确定C)移动鼠标时,会触发Mousemove事件D)控件的名称可以由编程人员设定(8)设窗体上有一个列表框控件List1,且其中含有若干列表项。则以下能表示当前被选中的列表项内容的是A)Listl.ListB)List!.ListindexC)Listl.IndexD)Listl.Text(9)程序运行后,在窗体上单击鼠标,此时窗体不会接收到的事件是A)MousedownB)MouseupC)LoadD)Click(11)如果要改变窗体的标题,则需要设置的属性是A)CaptionB)NameC)BackcolorD)Borderstyle(14)窗体的Mousedown事件过程FormMousedown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)有4个参数,关于这些参数,正确的描述是A)通过Button参数判定当前按下的是哪一个鼠标键B)Shift参数只能用来确定是否按下Shift键C)Shift参数只能用来确定是否按下Alt和Ctrl键D)参数X,Y用来设置鼠标当前位置的坐标(15)设组合框Combol中有3个项目,则以下能删除最后一项的语句是A)Combol.RemoveitemTextB)Combol.Removeitem2C)Combol.Removeitem3D)Combol.RemoveitemCombol.Listcount(16)以下关于焦点的叙述中,错误的是A)如果文本框的Tabstop属性为False,则不能接收从键盘上输入的数据B)当文本框失去焦点时,触发Lostfocus事件C)当文本框的Enabled属性为False时,其Tab顺序不起作用D)可以用Tabindex属性改变Tab顺序(17)如果要在菜单中添加一个分隔线,则应将其Caption属性设置为A)=B)*C)&D)-(26)在窗体上画两个滚动条,名称分别为Hscrolll、Hscroll2;六个标签,名称分别为Labell、Label2>Label3>Label4>Label5,Label6,其中标签Label4"Label6分别显示"A"、"B"、〃A*B”等文字信息,标签Labell、Label2

6分别显示其右侧的滚动条的数值,Label3显示A*B的计算结果。如图所示。当移动滚动框时,在相应的标签中显示滚动条的值。当单击命令按钮”计算〃时,对标签Labell、Label2中显示的两个值求积,并将结果显示在Label3中。以下不能实现上述功能的事件过程是A)PrivateSubCommandl_Click()Label3.Caption=Str(Vai(Label1.Caption)*Val(Label2.Caption))EndSubB)PrivateSubCommand1Click()Label3.Caption=Hscrolll.Value*Hscroll2.ValueEndSubC)PrivateSubCommandlClick()Label3.Caption=Hscrolll*Hscroll2EndSubD)PrivateSubCommand1Click()Labe13.Caption=Hscrolll.Text*Hscroll2.TextEndSub(28)在窗体上画一个名称为Textl的文本框,并编写如下程序:PrivateSubFormLoad()ShowTextl.Text=Textl.SetfocusEndSubPrivateSubFormMouseup(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Print”程序设计〃EndSubPrivateSubTextl_Keydown(KeycodeAsInteger,ShiftAsInteger)Print"VisualBasic”;EndSub程序运行后,如果按"A"键,然后单击窗体,则在窗体上显示的内容是A)VisualBasicB)程序设计C)A程序设计D)VisualBasic程序设计2004年4月二级VB(1)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()Move500,500EndSub程序运行后,单击命令按钮,执行的操作为A)命令按钮移动到距窗体左边界、上边界各500的位置B)窗体移动到距屏幕左边界、上边界各500的位置C)命令按钮向左、上方向各移动500

7D)窗体向左、上方向各移动500(2)在窗体有若干控件,其中有一个名称为Textl的文本框。影响Textl的Tab顺序的属性是A)TabstopB)EnabledC)VisibleD)Tabindex(4)在窗体上画一个名称为Listl的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环语句为A)For1=0ToListl.Listcount-1NextB)For1=0ToListcount-1NextC)For1=1ToListl.ListcountNextD)For1=1ToListcountNext(6)以下关于图片框控件的说法中,错误的是A)可以通过Print方法在图片框中输出文本B)清空图片框控件中图形的方法之一是加载一个空图形C)图片框控件可以作为容器使用D)用Stretch属性可以自动调整图片框中图形的大小(8)以下叙述中错误的是A)下拉式菜单和弹出式菜单都用菜单编辑器建立B)在多窗体程序中,每个窗体都可以建立自己的菜单系统C)除分隔线外,所有菜单项都能接收Click事件D)如果把一个菜单项的Enabled属性设置为False,则该菜单项不可见(10)以下叙述中错误的是A)一个工程可以包括多种类型的文件B)VisualBasic应用程序既能以编译方式执行,也能以解释方式执行C)程序运行后,在内存中只能驻留一个窗体D)对于事件驱动型应用程序,每次运行时的执行顺序可以不一样(13)确定一个控件在窗体上的位置的属性是A)Width和HeightB)Width或HeightC)Top和LeftD)Top或Left(14)在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程PrivateSubCommandl_Click()Textl,Text=MVisuarMe.Textl="Basic”Textl="Program"EndSub程序运行后,如果单击命令按钮,则在文本框中显示的是A)VisualB)BasicC)ProgramD)出错(17)在窗体上画一个文本框、一个标签和一个命令按钮,其名称分别为Textl、Label1和Command1,然后编写如下两个事件过程:PrivateSubCommand1_Click()

8Strtext=Inputbox(”请输入”)Text1.Text=StrtextEndSubPrivateSubTextl_Change()Label).Caption=Right(Trim(Textl.Text),3)EndSub程序运行后,单击命令按钮,如果在输入对话框中输入abcdef,则在标签中显示的内容是A)空B)abcdefC)abcD)def(22)在窗体上画一个名称为Textl的文本框,要求文本框只能接收大写字母的输入。以下能实现该操作的事件过程是A)PrivateSubTextl_Keypress(KeyasciiAsInteger)IfKeyascii<65OrKeyascii>90ThenMsgbox"请输入大写字母"Keyascii=0EndIfEndSubA)PrivateSubText1_Keydown(KeycodeAsInteger,ShiftAsInteger)IfKeycode<65OrKeycode>90ThenMsgbox”请输入大写字母”Keycode=0EndIfEndSubB)PrivateSubTextl_Mousedown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfAsc(Textl.Text)<65OrAsc(Textl,Text)>90ThenMsgbox”请输入大写字母”EndIfEndSubC)PrivateSubTextl_Change()IfAsc(Textl.Text)>64AndAsc(Textl.Text)<91ThenMsgbox”请输入大写字母”EndIfEndSub2004年9月二级VB(1)设窗体上有一个文本框,名称为Textl,程序运行后,要求该文本框不能接受键盘输入,但能输出信息,以下属性设置正确的是:A)Textl.Maxiength=OB)Text1.Enabled=FalseC)Textl.Visible=FalseD)Textl.Width=0(2)以下能在窗体Forml的标题栏中显示“Visualbasic窗体”的语句是A)Forml.Name="Visualbasic窗体”B)Forml.Title=*Visualbasic窗体”C)Forml.Caption="Visualbasic窗体〃D)Forml.Text=*Visualbasic窗体”

9(3)在窗体上画一个名称为Textl的文本框,然后画一个名称为HscroHl的滚动条,其Min和Max属性分别为。和100。程序运行后,如果移动滚动框,则在文本框中显示滚动条的当前值,如图所示:

10以下能实现上述操作的程序段是A)PrivateSubHscroll_Change0Textl.Text=Hscrolll.ValueEndSubB)PrivateSubHscroll_Click()Textl.Text=Hscrolll.ValueEndSubC)PrivateSubHscroll_Change()Textl.Text=Hscroll.CaptionEndSubD)PrivateSubHscroll_Click()Textl.Text=Hscroll.CaptionEndSub(4)设菜单中有一个菜单项为"Open"。若要为该菜单命令设计访问键,即按下Alt及字母0时,能够执行"Open”命令,则在菜单编辑器中设置“Open”命令的方式是A)把Caption属性设置为&0pen0把Name属性设置为&0penB)把Caption属性设置为O&PenD)把Name属性设置为O&Pen(7)在窗体上画一个名称为Timer1的计时器控件,要求每隔0.5秒发生一次计时器事件,则以下正确的属性设置语句是A)Timerl.Interval=O.5B)Timerl.Interval=5(11)以下叙述中错误的是A)事件过程是响应特定事件的一段程序B)不同的对象可以具有相同名称的方法C)对象的方法是执行指定操作的过程D)对象事件的名称可以由编程者指定C)Timer.Interval=50D)Timerl.Interval=500(9)以下关于多重窗体程序的叙述中,错误的是A)用Hide方法不但可以隐藏窗体,而且能清除内存中的窗体B)在多重窗体程序中,各窗体的菜单是彼此独立的C)在多重窗体程序中,可以根据需要指定启动窗体D)在多重窗体程序中,需要单独保存每个窗体(13)当一个复选框被选中时,它的Value属性的值是A)3B)2C)1D)0(18)以下叙述中错误的是A)在Keypress事件过程中不能识别键盘的按下与释放B)在Keypress事件过程中不能识别回车键0在Keydown和Keyup事件过程中,将键盘输入的"A"和"a"视作相同的字母D)在Keydown和Keyup事件过程中,从大键盘上输入的"1”和从右侧小键盘上输入的"1”被视作不同的字符(20)在窗体上画一个名称为Commanddialogl的通用对话框,一个名称为Command1的命令按钮。然后编写如下事件过程:PrivateSubCommand1Click()Commondialogl.Filename=””Commondialogl.Filter="AllFile|*.*|(*.Doc)I*.Doc|(*.Txt)|*.Txt*Commondialogl.Filterindex=2Commondialogl.Dialogtitle=/zVbtest/zCommondialogl.Action=lEndSub对于这个程序,以下叙述中错误的是A)该对话框被设置为“打开”对话框B)在该对话框中指定的默认文件名为空C)该对话框的标题为Vbtest

11D)在该对话框中指定的默认文件类型为文本文件(*.Txt)(27)在窗体上画•个名称为Label1、标题为aVisualBasic考试”的标签,两个名称分别为Commandl和Command2、标题分别为“开始”和“停止”的命令按钮,然后画一个名称为Timerl的计时器控件,并把其Interval属性设置为500,如图所示。编写如下程序:PrivateSubFormLoad()Timerl.Enabled二FalseEndSubPrivateSubCommandIClick()Timerl.Enabled=TrueEndSubPrivateSubTimerlTimer()IfLabell.Left

12Textl.Text=''计算机等级考试”EndSub(16)为了使命令按钮(名称为Commandl)右移200,应使用的语句是A)Command1.Move-200B)Command1.Move200C)Commandl.Left=Command1.Left+200D)Commandl.Left=Command1.Left-200(18)在窗体上画一个文本框和一个计时器控件,名称分别为Textl和Timeri,在属性窗口中把计时器的Interval属性设置为1000,Enabled属性设置为False,程序运行后,如果单击命令按钮,则每隔•秒钟在文本框中显示一次当前的时间。以下是实现上述操作的程序:PrivateSubCommand1_Click()Timer1.EndSubPrivateSubTimerl_Timer()Textl.Text=TimeEndSub在处应填入的内容是A)Enabled=TrueB)Enabled=FalseC)Visible=TrueD)Visible=False(19)假定在图片框Picture1中装入了一个图形,为了清除该图形(不删除图片框),应采用的正确方法是:A)选择图片框,然后按Del键B)执行语句Picture1.Picture=Loadpicture(t€^^)C)执行语句Picturel.Picture=^^^^D)选择图片框,在属性窗口中选择Picture属性,然后按回车键(20)在窗体上画一个Listl的列表框,一个名称为Labell的标签,列表框中显示若干个项目,当单击列表框中的某个项目时,在标签中显示被选中的项目的名称,下列能正确实现上述操作的程序是A)PrivateSubListl_Click()Labell.Caption=Listl.ListindexEndSubB)PrivateSubListl_Click()Labell.Name=Listl.ListindexEndSubC)PrivateSubListl_Click()Labell.Name=Listl.TextEndSubD)PrivateSubListl_Click()LabelI.Caption=Listl.TextEndSub(24)在VisualBasic工程中,可以作为启动对象的程序是A)任何窗体或标准模块B)任何窗体或过程C)SubMain过程或其他任何模块D)SubMain过程或任何窗体(25)假定建立了一个名为Commandl的命令按钮数组,则以下说法中错误的是A)数组中每个命令按钮的名称(名称属性)均为Commandl

13B)数组中每个命令按钮的标题(Caption属性)都一样C)数组中所有命令按钮可以使用同一个事件过程D)用名称Command1(下标)可以访问数组中的每个命令按钮(26)把窗体的Keypreview属性设置为True,然后编写如下事件过程:PrivateSubForm_Kcypress(KeyasciiAsInteger)DimChAsStringCh=Chr(Keyascii)Keyascii=Asc(Ucase(Ch))PrintChr(Keyascii+2)EndSub程序运行后,按键盘上的“A”键,则在窗体上显示的内容是A)AB)BC)CD)D2005年9月二级VB(19)在窗体上画一个列表框和一个命令按钮,其名称分别为List】和Command],然后编写如下事件过程:PrivateSubForm_Load()List1.AdditemnItem1”List1.Additem"Item2”List1.Additem"Item3”EndSubPrivateSubCommandl_Click()Listl.List(Listl.Listcount)="AAAA”EndSub程序运行后,单击命令按钮,其结果为A)把字符串“AAAA”添加到列表框中,但位置不能确定B)把字符串“AAAA”添加到列表框的最后(即“Item3”的后面)C)把列表框中原有的最后一项改为“AAAA”D)把字符串“AAAA”插入到列表框的最前面(即“Item1”的前面)(29)以下关于Keypress事件过程中参数Keyascii的叙述中正确的是A)Keyascii参数是所按键的ASCH码B)Keyascii参数的数据类型为字符串C)Kcyascii参数可以省略D)Keyascii参数是所按键上标注的字符(30)设窗体上有一个名为Textl的文本框,并编写如下程序:PrivateSubForm_Load()ShowTextl.Text=n"Textl.SetfbcusEndSubPrivateSubForm_Mouseup(ButtonAsInteger,_ShiftAsInteger,XAsSingle,YAsSingle)Print”程序设计”EndSubPrivateSubText1Kcydown(KcycodcAsInteger,ShiftAsInteger)Print"VisualBasic**;EndSub

14程序运行后,如果在文本框中输入字母“A”,然后单击窗体,则在窗体上显示的内容是A)VisualBasicB)程序设计C)VisualBasic程序设计D)A程序设计

15(31)假定有下表所列的菜单结构:标题名称层次显示Appear1(主菜单)大图标Bigicon2(子菜单)小图标Smallicon2(子菜单)要求程序运行后,如果单击菜单项“大图标”,则在该菜单项前添加一个以下正确的事件过程是A)PrivateSubBigicon_Click()Bigicon.Checked=FalseEndSubB)PrivateSubBigicon_Click()Me.Appear.Bigicon.Checked=TrueC)PrivateSubBigicon_Click()Bigicon.Checked=TrueEndSubD)PrivateSubBigicon_Click()Appear.Bigicon.Checked=TrueEndSub话框的标题为“NewTitle”的事件过程是A)PrivateSubCommand1_Click()Commondialog1.Dialogtitle="NewTitle**Commondialog1.ShowprinterEndSubB)PrivateSubCommand1_Click()Commondialog1.Dialogtitle="NewTitle”Commondialog1.ShowfbntEndSubC)PrivateSubCommandl_Click()Commondialog1.Dialogtitle="NewTitle”Commondialog1.ShowopenEndSubD)PrivateSubCommandl_Click()Commondialog1.Dialogtitle="NewTitle"Commondialog1.ShowcolorEndSubEndSub(32)假定通用对话框的名称为Commondialog1,命令按钮的名称为Command1,则单击命令按钮后,能使打开的对填空题2002年9月二级VB(1)在窗体上画两个标签,其名称分别为Label1和Label2,Caption属性分别为“数值”及空白;然后画一个名称为Hscolll的水平滚动条,其Min的值为0,Max的值为100。程序运行后,如果单击滚动条两端的箭头,则在标签Lable2中显示滚动条的值,如图所示。请在口]和[2]处填入适当的内容,将程序补充完整。PrivateSubIIscrolll_[1]()Lab12.Caption=Hscro111.[2]EndSub(2)在窗体上画一个名称为Commandl、标题为“计算”的命令按钮:画两个文本框,名称分别为Textl和Text2;然后画4个标签,名称分别为LabelhLabel2,Label3和Label%标题分别为“操作数1”、“操作数2”、“运算结果”和空白;再建立一个含有4个单选按纽的控件数组,名称为Optionl,标题分别为“+”程序运行后,在Textl、Text2中输入两个数值,选中一个单选按钮后单击命令按钮,相应的计算结果显示在Label*程序运行情况如图所示。请在[3]、[4]和[5]处填入适当的内容,将程序补充完整。Fl画白

16PrivateSubCommand1_Click()For1=0To3If[3]=TrueThen0pt=0ptionl(I).CaptionEndIfNextSelectCase[4]Case"Result=Val(Textl.Text)+Val(Text2.Text)Case”-”Result=Val(Textl.Text)-Val(Text2.Text)Case"*”Result=Val(Text.Text)*Val(Text2.Text)Case"/"Result=Val(Textl.Text)/Vai(Text2.Text)EndSelect[5]=ResultEndSub(3)在窗体上画一个名称为Commandl的命令按钮和一个名称为Textl的文本框。程序运行后,Commandl为禁用(灰色)。当向文框中输入任何字符时,命令按钮Commandl变为可用。请在[6]处填入适当的内容,将程序补充完整。PrivateSubFormLoad()Commandl.Enabled=FaIseEndSubPrivateSubTextl_[6]()Commandl.Enabled=TrueEndSub(4)在菜单编辑器中建立了一个菜单,名为Pmenu,用下面的语句可以把它作为弹出式菜单弹出,请填空。Forml.[7]Pmenu(6)在窗体上画一个文本框和一个图片框,然后编写如下两个事件过程:PrivateSubForm_Load()Textl.Text=''计算机”EndSubPrivateSubTextl_Change()Picture1.Print"等级考试”EndSub程序运行后,在文本框中显示的内容是[10],而在图片框中显示的内容是[11]。(9)在窗体上画一个名称为Lablel的标签和一个名称为Listl的列表框。程序运行后,在列表框中添加若干列表项。当双击列表框中的某个项目时,在标签Labell中显示所选中的项目,如图所示。请在[14]和[15]处填入适当的内容将程序补充完整。

17PrivateSubForm_Load()List1.Additem"北京“List1.Additem"上海"List1.Additem"湖北“EndSubPrivateSub[14]()Labell.Caption=[15]EndSub2003年4月二级VB(4)为了在运行时把D:\Pic文件夹下的图形文件A.Jpg装入图片框Picture],所使用的语句为【4】。(5)计时器控件能有规律的以一定时间间隔触发【5】事件,并执行该事件过程中的程序代码。填空题(9)在窗体上画一个名称为Combo1的组合框,画两个名称分别Labell和Label2及Caption属性分别为"城市名称"和空白的标签。程序运行后,当在组合框中输入一个新项后按回车键(ASCH码为13)时,如果输入的项在组合框的列表中不存在,则自动添加到组合框的列表中,并在Label2中给出提示"己成功添加输入项"如图所示;如果存在,则在Label2中给出提示"输入项已在组合框中"。请在【12】、【13】和【14】处将程序补充完整。PrivateSubCombo1_112](KeyasciiAsInteger)IfKeyascii=13ThenForI=0ToCombo1.Listcount-1IfCombo1.Text=[13]ThenLabel2.Caption="输入项已在组合框中”ExitSubEndIfNextILabel2.Caption="已成功添加输入项”Combo1.[14]Combo1.TextEndIfEndSub2003年9月二级VB(2)把窗体的Keypreview属性设置为True,然后编写如下两个事件过程:PrivateSubFormKeydown(KeycodeAsInteger,ShiftAsInteger)PrintChr(Keycode)EndSubPrivateSubForm_Keypress(KeyasciiAsInteger)

18PrintChr(Keyascii)EndSub程序运行后,如果直接按键盘上的〃A〃键(即不按住Shift键),则在窗体上输出的字符分别是[3】和【4】o(3)在窗体上画一个标签(名称为Labell)和一个计时器(名称为Time)),然后编写如下几个事件过程:PrivateSubFormLoad()Timerl.Enabled=FalseTimerl.Interval=[5]EndSubPrivateSubFormClickOTimerl.Enabled=[6]EndSubPrivateSubTimerl_Timer()Labell.Caption=[7]EndSub程序运行后,单击窗体,将在标签中显示当前时间,每隔1秒钟变换一次。请填空。(4)在窗体上画一个文本框、一个标签和一个命令按钮,其名称分别为Text1、Labell和Commandl,然后编写如下.两个事件过程:PrivateSubCommand1_C1ick()S$=Inputbox("请输入一个字符串”)Textl.Text=S$EndSubPrivateSubTextlChangeOLabell.Caption=Ucase(Mid(Textl.Text,7))EndSub程序运行后,单击命令按钮,将显示一个输入对话框,如果在该对话框中输入字符串"Visualbasic”,则在标签中显示的内容是[8】o(5)在窗体上画一个列表框、一个命令按钮和一个标签,其名称分别为Listl、Commandl和Labell,通过属性窗口把列表框中的项目设置为:〃第一个项目"、〃第二个项目〃、〃第三个项目〃、〃第四个项目〃。程序运行后,在列表框中选择一个项目,然后单击命令按钮,即可将所选择的项目删除,并在标签中显示列表框当前的项目数,运行情况如图所示(选择〃第三个项目〃的情况)。下面是实现上述功能的程序,请填空。PrivateSubCommand1_C1ick()IfListl.Listindex>=[9]ThenListl.Removeitem[10]Labell.Caption=[11]ElseMsgbox〃请选择要删除的项目“EndIfEndSub2004年4月二级VB(1)VisualBasic应用程序中标准模块文件的扩展名是【1】。(2)在菜单编辑器中建立一个菜单,其主菜单项的名称为Mnuedit,Visible属性为False,程序运行后,如果用鼠标右键单击窗体,则弹出与Mnuedit相应的菜单。以下是实现上述功能的程序,请填空。PrivateSubForm[2](ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2Then[3]MnueditEndIfEndSub(3)为了使计时器控件Timerl每隔0.5秒触发一次Timer事件,应将Timer1控件的14】属性设置为【5】。(4)与数学表达式对应的VisualBasic表达式是[6]。

19⑸将C盘根目录下的图形文件MoonJpg装入图片框Picturel的语句是【7】.(6)在窗体上画一个名称为Textl的文本框,然后画三个单选按钮,并用这三个单选按钮建立一个控件数组,名称为Option1,程序运行后,如果单击某个单选按钮,则文本框中的字体将根据所选择的单选按钮切换,如图所示,请填空。PrivateSubOption1_Click(IndexAsInteger)SelectCase[8]Case0A="宋体”Case1A="黑体”Case2A="楷体_GB2312”EndSelectTextl.[9]=AEndSub2005年4月二级VB(7)在窗体上画一个文本框和一个图片框,然后编写如下两个事件过程:PrivateSubForm_Click()Textl.Text=”VB程序设计”EndSubPrivateSubTextl_Change()Picture1.PrintHVbprogrammingHEndSub程序运行后,单击窗体,在文本框中显示的内容是【7],而在图片框中显示的内容是[8】三、基本语法2002年9月二级VB(4)设有如下变量声明DimTestdateAsDate,为变量Testdate正确赋值的表达方式是A)Textdate=#l/1/2002#B)Testdate=#"1/1/2002”#C)Textdate=Date("l/l/2002'')D)Testdate=Format("M/D/Yy'',"1/1/2002")(5)设有如下声明:DimXAsInteger,如果Sgn(X)的值为-1,则X的值是A)整数B)大于0的整数C)等于0的整数D)小于0的数(7)设A=3,B=5,则以下表达式值为真的是A)A>=BAndB>10B)(A>B)Or(B>0)C)(A<0)Eqv(B>0)D)(-3+5>A)And(B>0)(8)设有语句X=Inputbox(“输入数值”,“0”,“示例”)程序运行后,如果从键盘上输入数值10并按回车键,则F列叙述中正确的是A)变量X的值是数值10B)在Inputbox对话框标题栏中显示的是“示例”C)0是默认值D)变量X的值是字符串“10”(9)从键盘上输入两个字符串,分别保存在变量Strl、Str2中。确定第二个字符串在第一个字符串中起始位置的函数是A)LeftB)MidC)StringD)Instr(10)设A="VisualBasic",下面使B="Basic”的语句是A)B=Left(A,8,12)B)B=Mid(A,8,5)C)B=Rigth(A,5,5)D)B=Left(A,8,5)2003年4月二级VB(3)下列可作为VisualBasic变量名的是A)A#AB)4AC)?XyD)Consta(4)设有如下的记录类型TypeStudentNumberAsString

20NameAsStringAgeAsIntegerEndType则正确引用该记录类型变量的代码是A)Student.Name="张红"B)DimSAsStudentS.Name="张红"C)DimSAsTypeStudentD)DimSAsTypeS.Name="张红"S.Name="张红"(5)函数String(N,"Str")的功能是A)把数值型数据转换为字符串C)从字符串中取出N个字符B)返回由N个字符组成的字符串D)从字符串中第N个字符的位置开始取子字符串(6)将数学表达式Cos2(A+B)+5e2写成VisualBasic的表达式,其正确的形式是A)Cos(A+B)A2+5*Exp(2)B)CosA2(A+B)+5*Exp(2)C)Cos(A+B)A2+5*Ln(2)D)CosA2(A+B)+5*Ln(2)(7)在窗体上画一个命令按钮,名称为Command1。单击命令按钮时,执行如下事件过程:PrivateSubCommand1_Click()AS="SoftwareAndHardware*'B$=Right(A$,8)C$=Mid(A$,1,8)MsgboxA$,,B$,C$,1EndSub则在弹出的信息框的标题栏中显示的信息是A)SoftwareAndHardwareB)SoftwareC)HardwareD)1(8)执行语句sA=Inputbox("Today","Tomorrow","Yesterday",,,"DayBeforeYesterday",5)将显示一个输入对话框,在对话框的输入区中显示的信息是A)TodayB)TomorrowC)YesterdayD)DayBeforeYesterday(17)以下叙述中错误的是A)用Shell函数可以调用能够在WindowsF运行的应用程序B)用Shell函数可以调用可执行文件,也可以调用VisualBasic的内部函数C)调用Shell函数的格式应为:<变量g>=Shell(……)D)用Shell函数不能执行DOS命令2003年9月二级VB(6)以下能正确定义数据类型Telbook的代码是A)TypeTelbookB)TypeTelbookNameAsString*10NameAsString*10

21TelnumAsIntegerEndTelbookD)TypedefTelbookNameString*10TelnumIntegerEndTypeTelnumAsIntegerEndTypeC)TypeTelbookNameString*10TelnumIntegerEndTypeTelbook(7)以下声明语句中错误的是A)ConstVarl=123C)DefintA-Z(10)设A=10,B=5,C=l,A)TrueB)False2004年4月二级VBA)DimVar2='ABC'D)StaticVar3AsInteger执行语句PrintA>B>C后,窗体上显示的是B)1D)出错信息(7)执行语句S=Len(Mid("Visualbasic”,l,6))B,S的值是A)VisualB)BasicC)6D)11(9)在窗体上画一个命令按钮,其名称为Commandl,然后编写如下事件过程:PrivateSubCommand1_Click()A=12345PrintFormat$(A,n000.00H)EndSub程序运行后,单击命令按钮,窗体上显示的是A)123.45B)12345.00C)12345D)00123.45(15)以下关系表达式中,其值为False的是A)“ABC”>“Abc"B)HThe,,o,,TheynC)”VISUAL”=Ucase("Visual”)D)MIntegerH>MIntM(16)语句Print5/4*6\5Mod2的输出结果是A)0B)1C)2D)3(18)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()X=-5IfSgn(X)ThenY=Sgn(XA2)ElseY=Sgn(X)EndIfPrintYEndSub程序运行后,单击命令按钮,窗体上显示的是A)-5B)25C)1D)-l2004年9月二级VB(6)以下关于Msgbox的叙述中,错误的是A)Msgbox函数返回一个整数B)通过Msgbox函数可以设置信息框中图标和按钮的类型C)Msgbox语句没有返回值D)Msgbox函数的第一个参数是一个整数,该参数只能确定对话框中显示的按钮数量(12)以下合法的VisualBasic标识符是A)ForloopB)ConstC)9abcD)A#X(14)表达式5Mod3+3\5*2的值是A)0B)2C)4D)6(15)设X=4,Y=8,Z=7,表达式XZ)OrZ

22(16)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()A$="Visualbasic”PrintString(3,A$)EndSub程序运行后,单击命令按钮,在窗体上显示的内容是A)VWB)VisC)SicD)11(19)执行如下两条语句,窗体上显示的是A=9.8596PrintFormat(A,*$00,00.00")A)0,009.86B)$9.86C)9.86D)$0,009.862005年4月二级VB(12)设A=5,B=4,C=3,D=2,下列表达式的值是3>2*BOrA=CAndBoCOrC>DA)1B)TrueC)FalseD)2(13)设A=,,Microsoftvisualbasic,,J则以下使变量B的值为"Visualbasic”的语句是A)B=Left(A,10)B)B=Mid(A,10)C)B=Right(A,10)D)B=Mid(A,11,10)(14)假定有如下的窗体事件过程:PrivateSubForm_Click()AS=0MicrosoftVisualBasic”B$=Right(A$,5)C=Mid(A$,1,9)MsgboxAS,34,B$,C$,5EndSub程序运行后单击窗体,则在弹出的信息框中的标题栏中显示的信息是:A)MicrosoftVisualB)MicrosoftC)BasicD)5(17)在窗体上画一个文本框,然后编写如下事件过程:PrivateSubForm_Click()X=Inputbox("请输入一个整数”)PrintX+Text1.TextEndSub程序运行时,在文本框中输入456,然后单击窗体,在输入对话框中输入123,单击“确定”按钮后,在窗体上显示的内容是:A)123B)456C)579D)1234562005年9月二级VB(14)设A=2,B=3,C=4,D=5,下列表达式的值是NotA<=COr4*C=BA2AndBoA+CA)-1B)1C)TrueD)False(15)设A=5,B=10,则执行C=Int((B・A)*Rnd+A)+l后,C值的范围为A)5〜10B)6〜9C)6〜10D)5〜9(16)在窗体上画一个命令按钮,名称为Commandl,然后编写如下事件过程:PrivateSubCommand1_Click()

23A$="SoftwareAndHardware"B$=Right(A$,8)C$=Mid(A$,1,8)MsgboxAS,,B$,C$,1EndSub运行程序,单击命令按钮,则在弹出的信息框的标题栏中显示的是A)SoftwareAndHardwareB)SoftwareC)HardwareD)1(17)在窗体上画•个命令按钮和•个文本框,其名称分别为Commandl和Textl,把文本框的Text属性设置为空白,然后编写如下事件过程:PrivateSubCommand1_Click()A=Inputbox(nEnterAnInteger**)B=Inputbox(HEnterAnInteger")Textl.Text=B+AEndSub程序运行后,单击命令按钮,如果在输入对话框中分别输入8和10,则文本框中显示的内容是A)108B)18C)810D)出错(18)在窗体上画两个文本框,其名称分别为Textl和Text2,然后编写如下程序:PrivateSubForm_Load()ShowTextl.Text=,H,Text2.Text=Textl.SetfbcusEndSubPrivateSubTcxtl_Change()Text2.Text=Mid(Textl.Text,8)EndSub程序运行后,如果在文本框Textl中输入Beijingchina,则在文本框Text2中显示的内容是A)BeijingchinaB)ChinaC)BeijingD)Beijingc填空题2004年9月二级VB(1)设有如下程序段:A$="Beijingshanghai”B$=Mid(A$,Instr(A$,"G")+l)执行上面的程序段后,变量B$的值为2005年4月二级VB(6)以下语句的输出结果是:【6】PrintInt(l2345.6789*100+0.5)/100四、分支、循环2002年9月二级VB(15)在窗体上画一个命令按钮,名称为Commandl。然后编写如下程序:PrivateSubCommand1_Click()For1=1To4ForJ=0ToIPrintChr$(65+I);NextJPrintNextIEndSub

24程序运行后,如果单击命令按钮,则在窗体上显示的内容是A)BBB)AC)BD)AACCCBBCCBBBDDDDCCCDDDCCCCEEEEEDDDDEEEEDDDDD(17)在窗体上画两个名称分别为Textl>Texte2的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()DimXAsInteger,NAsIntegerX=1N=0DoWhileX<20X=X*3N=N+1LoopText1.Text=Str(X)Text2.Text=Str(N)EndSub程序运行后,单击命令按钮,在两个文本框中显示的值分别是A)15和1B)27和3C)195和3D)600和4(18)在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮,然后编写如卜事件过程:PrivateSubCommand1_CIick()DimIAsInteger,NAsIntegerFor1=0To501=1+3N=N+1IfI>10ThenExitForNextTextl.Text=Str(N)EndSub程序运行后,单击命令按钮,在文本框中显示的值是A)2B)3D)4D)52003年4月二级VB(11)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()X=0N=Inputbox(巧ForI=1ToNForJ=lToIX=X+1NextJNextIPrintXEndSub程序运行后,单击命令按钮,如果输入3,则在窗体上显示的内容是A)3B)4C)5D)6(22)以下能够正确计算N!的程序是

25A)PrivateSubCommand1_Click()N=5:X=1DoX=X*I1=1+1LoopWhileINPrintXEndSub2003年9月二级VB(19)在窗体上画一个名称为Commandl的命令按钮和两个名称分别为Textl、Text2的文本框,然后编写如下事件过程:PrivateSubCommandl_Click()N=Textl.TextSelectCaseNCase1To20X=10Case2,4,6X=20CaseIs<10X=30Case10X=40EndSelectText2.Text=XEndSub程序运行后,如果在文本框Textl中输入10,然后单击命令按钮,则在Text2中显示的内容是A)10B)20C)30D)40(20)设有以下循环结构Do循环体LoopWhile〈条件》

26则以下叙述中错误的是A)若"条件”是一个为0的常数,则一次也不执行循环体A)〃条件"可以是关系表达式、逻辑表达式或常数C)循环体中可以使用ExitDo语句D)如果”条件〃总是为True,则不停地执行循环体(21)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_C1ick()DimNumAsIntegerNum=1DoUntilNum>6PrintNum;Num=Num+2.4LoopEndSub程序运行后,单击命令按钮,则窗体上显示的内容是A)13.45.8B)135C)147D)无数据输出(22)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1Click()DimAAsInteger,SAsIntegerA=8S=1DoS=S+AA=A-lLoopWhileA<=0PrintS;AEndSub程序运行后,单击命令按钮,则窗体上显示的内容是A)79B)340097D)死循环(27)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()ForN=1To20IfNMod300ThenM=M+N\3NextNPrintNEndSub程序运行后,如果单击命令按钮,则窗体上显示的内容是A)15B)18C)21D)24(29)设有如下程序:PrivateSubCommandl_Click()DimSumAsDouble,XAsDoubleSum=0N=0ForI=1To5X=N/IN=N+1Sum=Sum+X

27NextEndSub该程序通过For循环计算一个表达式的值,这个表达式是A)1+1/2+2/3+3/4+4/5B)1+1/2+2/3+3/4C)1/2+2/3+3/4+4/5D)1+1/2+1/3+1/4+1/52004年4月二级VB(5)以下Case语句中错误的是A)Case0To10B)CaseIs>10C)CaseIs>10AndIs<50D)Case3,5,Is>10(25)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()C=1234Cl=Trim(Str(C))ForI=1To4PrintNextEndSub程序运行后,单击命令按钮,要求在窗体上显示如下内容1121231234则在下划线处应填入的内容为A)Right(Cl,I)B)Left(Cl,I)C)Mid(C1,1,1)D)Mid(Cl,I,I)(26)在窗体上画一个名称为Commandl的命令按钮和一个名称为Textl的文本框,然后编写如下事件过程:PrivateSubCommand1_Click()N=Val(Textl.Text)ForI=2ToNForJ=2ToSqr(I)IfIModJ=0ThenExitForNextJIfJ>Sqr(I)ThenPrintINextIEndSub该事件过程的功能是A)输出N以内的奇数B)输出N以内的偶数C)输出N以内的素数D)输出N以内能被J整除的数2004年9月二级VB(5)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()X=Inputbox("Input")SelectCaseXCase1,3Print"分支1"CaseIs>4Print"分支2"CaseElsePrint"Else分支”EndSelect

28EndSub程序运行后,如果在输入对话框中输入2,则窗体上显示的是A)分支1B)分支2C)Else分支D)程序出错(17)设有如下程序段:X=2For1=1To10Step2X=X+INext运行以上程序后,X的值是A)26B)27C)38D)57(28)执行以下程序段A$="Abbacddcba”For1=6To2Step-2X=Mid(A,1,1)Y=Left(A,I)Z=Right(A,I)Z=Ucase(X&YaZ)NextIPrintZ输出结果为A)ABAB)BBABBAOABBABAD)AABAAB2005年4月二级VB(15)设A="A'',B=''B",C="C",D="D”,执行语句X=Iif((AD)JA"JB”)后,X的值为:A)"a"B)“b"C)“B"D)“A"(21)在窗体上画一个命令按钮,名称为Commands然后编写如卜.事件过程:PrivateSubCommand1_Click()DimIAsInteger,XAsIntegerForI=1To6Ifl=1ThenX=IIfI<=4ThenX=X+1ElseX=X+2EndIfNextIPrintXEndSub程序运行后,单击命令按钮,其输出结果为A)9B)6C)12D)15(22)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()C=nABCD"ForN=1To4PrintNextEndSub程序运行后,单击命令按钮,要求在窗体上显示如下内容:DCDBCD

29ABCD则在处应填入的内容为A)Left(C,N)B)Right(C,N)C)Mid(C,N,l)D)Mid(C,N,N)(23)执行以下程序段DimXAsInteger,IAsIntegerX=0ForI=20To1Step-2X=X+I\5NextI后,X的值为A)16B)17C)18D)19(27)在窗体上画一个命令按钮和一个文本框,名称分别为Command1和Textl,然后编写如下程序:PrivateSubCommandl_Click()A=Inputbox(”请输入日期(1〜31)”)T=”旅游景点:&Iifl;A>0AndA<=10J长城”,巧_&Iif(A>10AndAv=20,”故宫丁)_&Iif(A>20AndA<=30,”颐和园”,巧Textl.Text=TEndSub程序运行后,如果从键盘输入16,则在文本框中显示的内容是:A)旅游景点:长城故宫B)旅游景点:长城颐和园C)旅游景点:颐和园D)旅游景点:故宫(32)设有如下程序:PrivateSubCommand1_Click()DimCAsInteger,DAsIntegerC=4D=Inputbox("请输入一个整数”)DoWhileD>0IfD>CThenC=C+1EndIfD=Inputbox("请输入一个整数”)LoopPrintC+DEndSub程序运行后,单击命令按钮如果在输入对话框中依次输入1、2、3、4、5、6、7、8、9、0,则输出结果是:A)12B)llC)10D)92005年9月(20)假定有如下事件过程:PrivateSubForm_Click()DimXAsInteger,NAsIntegerX=1N=0DoWhileX<28X=X*3N=N+1LoopPrintX,NEndSub程序运行后,单击窗体,输出结果是A)814B)563C)281D)2435

30(21)有如下程序:PrivateSubForm_Click()DimCheck,CounterCheck=TrueCounter=0DoDoWhileCounter<20Counter=Counter+1IfCounter=10ThenCheck=FalseExitDoEndIfLoopLoopUntilCheck=FalsePrintCounter,CheckEndSub程序运行后,单击窗体,输出结果为A)150B)20-1C)10TrueD)10False(22)有如下程序:PrivateSubForm_Click()DimIAsInteger,SumAsIntegerSum=0ForI=2To10IfIMod2<>0AndIMod3=0ThenSum=Sum+IEndIfNextIPrintSumEndSub程序运行后,单击窗体,输出结果为A)12B)30C)24D)18填空题2003年4月二级VB(3)执行下面的程序段后,变量S的值为【3】»S=5ForI=2.6To4.9Step0.6S=S+1NextI2003年9月二级VB(1)执行下面的程序段后,I的值为3】,S的值为【2】oS=2ForI=3.2To4.9Step0.8S=S+1NextI2004年9月二级VB(2)以下程序段的输出结果是Num二0WhileNum<=2Num=Num+1WendPrintNum2005年4月二级VB

31(8)阅读下面的程序PrivateSubForm_Click()DimCheckAsBoolean,CounterAsIntegerCheck=TrueCounter=5DoDoWhileCounter<20Counter=Counter+1IfCounter=10ThenCheck=FalseExitDoEndIfLoopLoopUntilCheck=FalsePrintCounterEndSub程序运行后,单击窗体,输出结果是[9】(9)设有如下程序PrivateSubForm_Click()DimAAsInteger,SAsIntegerN=8S=0DoS=S+NN=N-1LoopWhileN>0PrintsEndSub以上程序的功能是【10】,程序运行后,单击窗体,输出结果为[11]五、数组2002年9月二级VB(19)在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimArray1(10,10)AsIntegerDimI,JAsIntegerFor1=1To3ForJ=2To4Arrayl(I,J)=I+JNextJNextIText1.Text=Array1(2,3)+Array1(3,4)EndSub程序运行后,单击命令按钮,在文本框中显示的值是A)12B)13C)14D)15(20)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:PrivateSubCommandl_Click()DimIAsInteger,}AsIntegerDimA(10,l0)AsIntegerFor1=1To3ForJ=1To3A(I,J)=(M)*3+JPrintA(I,J);

32NextJPrintNextJEndSub程序运行后,单击命令按钮,窗体上显示的是A)123B)234C)147D)123246345258456369456369789(21)设有如下程序:OptionBase0PrivateSubFonn_Click()DimADimIAsIntegerA=Array(1,2,3,4,5,6,7,8,9)For1=0To3PrintA(5-I);NextEndSub程序运行后,单击窗体,则在窗体上显示的是A)4321B)5432C)6543D)76542003年4月二级VB(14)在窗体上画一•个命令按钮,名称为Commandl,然后编写如下事件过程:OptionBase0PrivateSubCommand1_Click()DimCityAsVariantCity=Array(“北京“,“上海“,“天津「重庆”)PrintCity(l)EndSub程序运行后,如果单击命令按钮,则在窗体上显示的内容是A)空白B)错误提示C)北京D)上海(24)在窗体上画一个名称为Command1的命令按钮,一个名称为Labell的标签,然后编写如下事件过程:PrivateSubCommand1_Click()S=0ForI=1To15X=2*I-1IfXMod3=0ThenS=S+1NextILabel1.Caption=SEndSub程序运行后,单击命令按钮,则标签中显示的内容是A)1B)5C)27D)45(26)设在窗体上有一个名称为Commandl的命令按钮,并有以下事件过程:PrivateSubCommandl_Click()StaticBAsVariantB=Array.3,5,7,9)EndSub此过程的功能是把数组B中的5个数逆序存放(即排列为975,3,1)。为实现此功能,省略号处的程序段应该是A)ForI=0To5-l\2Tmp=B(I)B(I)=B(5-I-1)B(5-I-l)=Tmp

33NextA)ForI=0To5Tmp=B(I)B(I)=B(5-I-1)B(5-I-l)=TmpNextB)ForI=0To5\2Tmp=B(I)B(I)=B(5-I-1)B(5-I-l)=TmpNextC)ForI=1To5\2Tmp=B(I)B(I)=B(5-I-1)B(5-I-l)=TmpNext2003年9月二级VB(25)在窗体上画一个名称为Commandl的命令按钮,然后编写如下代码:OptionBase1PrivateSubCommandl_Click()D=0C=10X=Array(10,12,21,32,24)ForI=1To5IfX(I)>CThenD=D+X(I)C=X(I)ElseD=D-CEndIfNextIPrintDEndSub程序运行后,如果单击命令按钮,则在窗体上输出的内容为A)89B)99C)23D)77(30)以下有关数组定义的语句序列中,错误的是

34A)StaticArrl(3)Arrl(1)=100Arrl(2)="Hello”Arrl(3)=123.45B)DimArr2()AsIntegerDimSizeAsIntegerPrivateSubCommand2Click()Size=Inputbox("输入:〃)RedimArr2(Size)C)OptionBase1PrivateSubCommand3_Click()DimArr3(3)AsIntegerD)DimNAsIntegerPrivateSubCommand4Click()DimArr4(N)AsIntegerEndSubEndSubEndSub2004年4月二级VB(21)在窗体上画一个命令按钮(其NAME属性为Commandl),然后编写如下代码:OptionBase1PrivateSubCommand1_Click()DimAS=0A=Array(l,2,3,4)J=1ForI=4To1Step-1S=S+A(I)*JJ=J*10NextIPrintsEndSub运行上面的程序,单击命令按钮,其输出结果是A)4321B)1234C)34D)12(29)在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimArray1(10,10)AsIntegerDimIAsInteger,JAsIntegerForI=1To3ForJ=2To4Arrayl(I,J)=I+JNextJNextIText1.Text=Array1(2,3)+Arrayl(3,4)EndSub程序运行后,单击命令按钮,在文本框中显示的值是A)15B)14C)13D)12(30)在窗体上画四个文本框(如图所示),并用这四个文本框建立一个控件数组,名称为Textl(下标从0开始,自左至右顺序增大),然后编写如下事件过程:PrivateSubCommand1_Click()ForEachTextboxInTextlText1(1)=Textl(I).Index1=1+1NextEndSub程序运行后,单击命令按钮,四个文本框中显示的内容分别为A)0123B)1234C)0132D)出错信息

352004年9月二级VB(24)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:OptionBase1PrivateSubCommandl_Click()DimAA=Array(1,2,3,4,5)For1=1ToUbound(A)A(I)=A(I)+I-1NextPrintA(3)EndSub程序运行后,单击命令按钮,则在窗体上显示的内容是A)4B)5C)6D)7(25)阅读程序OptionBase1PrivateSubForm_Click()DimArr,SumSum=0Arr=Array(1,3,5,7,9,11,13,15,17,19)For1=1To10IfArr(1)/3=Arr(I)\3ThenSum=Sum+Arr(I)EndIfNextIPrintSumEndSub程序运行后,单击窗体,输入结果为A)13B)14C)27D)15(29)在窗体上画一个名称为Commandl的命令按钮,然后编写如下程序:OptionBase1PrivateSubCommandl_Click()DimAAsVariantA=Array(1,2,3,4,5)Sum=0For1=1To5Sum=Sum+A(I)NextIX=Sum/5ForI=1To5IfA(I)>XThenPrintA(I);NextIEndSub程序运行后,单击命令按钮,在窗体上显示的内容是A)12B)123C)345D)452005年4月二级VB(28)在窗体上画一个名称为Label1的标签,然后编写如下事件过程:PrivateSubForm_Click()DimArr(10,10)AsIntegerDimIAsInteger,JAsIntegerForI=2To4ForJ=2To4Arr(I,J)=I*JNextJ

36NextILabel1.Caption=Str(Arr(2,2)+Arr(3,3))EndSub程序运行后,单击窗体,在标签中显示的内容是A)12B)13C)14D)15(30)阅读程序:OptionBase1DimArr()AsIntegerPrivateSubForm_Click()DimIAsInteger,JAsIntegerRedimArr(3,2)Forl=1To3ForJ=1To2Arr(I,J)=I*2+JNextJNextIRedimPreserveArr(3,4)ForJ=3To4Arr(3,J)=J+9NextJPrintArr(3,2)+Arr(3,4)EndSub程序运行后,单击窗体,输出结果为:A)21B)13C)8D)25(31)在窗体上画一个名称为Commandl的命令按钮,然后编写如下程序:OptionBase1PrivateSubCommand1_Click()DimCAsInteger,DAsIntegerD=0C=6X=Array(2,4,6,8,10,12)ForI=1To6IfX(I)>CThenD=D+X(I)C=X(I)ElseD=D-CEndIfNextIPrintDEndSub程序运行后,如果单击命令按钮,则在窗体上输入的内容为A)10B)16C)12D)202005年9月二级VB(23)在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()DimArray1(10,10)AsIntegerDim1AsInteger,JAsIntegerForI=1To3ForJ=2To4

37Arrayl(I,J)=I+JNextJNextIText1.Text=Array1(2,3)+Array1(3,4)EndSub程序运行后,单击命令按钮,在文本框中显示的值是A)12B)13014D)15(24)在窗体上画一个命令按钮,其名称为Commands然后编写如下事件过程:PrivateSubCommand1_Click()DimA1(4,4),A2(4,4)ForI=1To4ForJ=1To4A1(1,J)=I+JA2(I,J)=A1(1,J)+I+JNextJNextIPrintA1(3,3);A2(3,3)EndSub程序运行后,单击命令按钮,在窗体上输出的是A)66B)105C)721D)612(25)有如下程序:OptionBase1PrivateSubForm_Click()DimArr,SumSum=0Arr=Array(l,3,5,7,9,11,13,15,17,19)ForI=1To10IfArr(I)/3=Arr(I)\3ThenSum=Sum+Arr(I)EndIfNextIPrintSumEndSub程序运行后,单击窗体,输出结果为A)25B)26C)27D)28(26)在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimA(5)AsStringForI=1To5A(I)=Chr(Asc(MA")+(I-1))NextIForEachBInAPrintB;NextEndSub程序运行后,单击命令按钮,输出结果是A)ABCDEB)12345C)AbcdeD)出错信息填空题2003年9月二级VB

38(6)设有程序:OptionBase1PrivateSubCommandl_Click()DimArrl,MaxAsIntegerArrl=Array(12,435,76,24,78,54,866,43)[12]=Arrl(l)ForI=1To8IfArrl(I)>MaxThen[13]NextIPrint”最大值是:";MaxEndSub以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。请填空。六、文件2002年9月二级VB(33)设在工程中有一个标准模块,其中定义了如下记录类型TypeBooksNameAsString*10TelnumAsString*20EndType在窗体上画一个名为Commandl的命令按钮。要求当执行事件过程CommandlClick时,在顺序文件Person.Txt中写入一条记录。下列能够完成该操作的事件过程是A)PrivateSubCommandl_Click()DimBAsBooksOpen"C:\Person.Txt"ForOutputAs#1B.Name=Inputbox("输入姓名”)B.Telnum=Inputbox("输入电话号码”)Write#1,B.Name,B.TelnumClose#1EndSubB)PrivateSubCommand1Click()DimBAsBooksOpen"C:\Person.Txt”ForInputAs#1B.Name=Inputbox("输入姓名")B.Tclnum=Inputbox("输入电话号码”)Print#1,B.Name,B.TelnumClose#1EndSub0PrivateSubCommand1_Click()DimBAsBooksOpen"C:\Person.Txt”ForOutputAs#1B.Name=Inputbox("输入姓名”)B.Telnum=Inputbox("输入电话号码”)Write#1,BClose#1EndSubD)

39PrivateSubCommand1_Click()Open"C:\Person.Txt"ForInputAs#1Name=Inputbox("输入姓名”)Telnum=Inputbox("输入电话号码”)Print#l,Name,TelnumClose#1EndSub(34)以下叙述中正确的是A)一个记录中所包含的各个元素的数据类型必须相同B)随机文件中每个记录的长度是同定的C)Open命令的作用是打开一个已经存在的文件D)使用Input#语句可以从随机文件中读取数据(35)目录列表框的Path属性的作用是A)显示当前驱动器或指定驱动器上的目录结构B)显示当前驱动器或指定驱动器上的某目录下的文件名C)显示根目录下的文件名D)显示该路径下的文件2003年4月二级VB(16)设有语句Open"C:\Test.Dat"ForOutputAs#1,则以下错误的叙述是A)该语句打开C盘根目录下一个已存在的文件Test.DatB)该语句在C盘根目录下建立一个名为Test.Dat的文件C)该语句建立的文件的文件号为1D)执行该语句后,就可以通过Print#语句向文件Test.Dat中写入信息(20)目录列表框的Path属性的作用是A)显示当前驱动器或指定驱动器上的路径B)显示当前.驱动器或指定驱动器上的某目录下的文件名C)显示根目录下的文件名D)只显示当前路径下的文件(29)窗体上有两个名称分别为Textl、Text2的文本框,一个名称为Commandl的命令按钮。运行后的窗体外观如图所示。■Forml姓名性厂专业I计算机科学与技术保存设有如下的类型声明TypePersonNameAsString*8MajorAsString*20EndType当单击"保存"按钮时,将两个文本框中的内容写入一个随机文件Test29.Dat中。设文本框中的数据已正确地赋值给Person类型的变量P。则能够正确地把数据写入文件的程序段是A)Open"C:\Test29.Dat"ForRandomAs#1

40Put#l,1,PClose#1A)Open"C:\Test29.DatMForRandomAs#1Get#l,1,PClose#1B)Open"C:\Test29.DatMForRandomAs#1Len=Len(P)Put#l,1,PClose#1C)OpenHC:\Test29.Dat"ForRandomAs#1Len=Len(P)Get#l,1,PClose#1(27)在窗体上画一个名称为Drivel的驱动器列表框,-个名称为Dirl的目录列表框,一个名称为Filel的文件列表框,两个名称分别为Labell、Label2,标题分别为空白和”共有文件”的标签。编写程序,使得驱动器列表框与目录列表框、目录列表框与文件列表框同步变化,并且在标签Labell中显示当前文件夹中文件的数量。如图所示。能够正确实现上述功能的程序是A)PrivateSubDirl_Change()Filel.Path=Dirl.PathEndSubPrivateSubDrive1_Change()Dirl.Path=Drivel.DriveLabell.Caption=File1.ListcountEndSubC)PrivateSubDirl_Change()Filel.Path=Dirl.PathLabell.Caption=Filel.ListcountEndSubPrivateSubDrivel_Change()Dirl.Path=Drivel.DriveLabell.Caption=Filel.ListcountEndSubB)PrivateSubDirl_Change()Filel.Path=Dirl.PathEndSubPrivateSubDrivel_Change()Dirl.Path=Drivel.DriveLabell.Caption=Filel.ListEndSubD)PrivateSubDirl_Change()Filel,Path=Dirl.PathLabel1.Caption=Filel.ListEndSubPrivateSubDrivel_Change()Dirl.Path=Drivel.DriveLabell.Caption=Filel.ListEndSub2003年9月二级VB(12)以下能判断是否到达文件尾的函数是A)BOFB)LOCC)LOFD)EOF(18)执行语句Open"Tel.Dat"ForRandomAs#1Len=50后,对文件Tel.Dat中的数据能够执行的操作是A)只能写,不能读B)只能读,不能写O既可以读,也可以写D)不能读,不能写2004年9月二级VB(10)以下关于文件的叙述中,错误的是A)顺序文件中的记录一个接一个地顺序存放B)随机文件中记录的长度是随机的C)执行打开文件的命令后,自动生成一个文件指针

41D)LOF函数返回给文件分配的字节数(26)在窗体上画一个名称为Filel的文件列表框,并编写如下程序:PrivateSubFilelDblclickOX=Shell(Filel.Filename,1)EndSub以下关于该程序的叙述中,错误的是A)X没有实际作用,因此可以将该语句写为:CallShell(Filel,Filename,1)B)双击文件列表框中的文件,将触发该事件过程C)要执行的文件的名字通过Filel.Filename指定D)Filel中显示的是当前驱动器、当前目录下的文件2005年4月二级VB(33)在窗体上画•个名称为Commandl的命令按钮和一个名称为Textl的文本框,在文本框中输入以下字符串:MicrosoftVisualBasicProgramming然后编写如下事件过程:PrivateSubCommand1_C1ick()Open,,D:\Temp\Outf.TxtMForOutputAs#1ForI=1ToLen(Textl.Text)C=Mid(Textl.Text,I,1)IfC>=AndCv=ThenPrint#1,Lcase(C)EndIfNextICloseEndSub程序运行后,单击命令按犯,文件Outf.Txt中的内容是:A)MVBPB)MvbpC)MVBPD)mbP2005年9月二级VB(34)假定在工程文件中有一个标准模块,其中定义了如下记录类型TypeBooksNameAsString*10TelnumAsString*20EndType要求当执行事件过程Commandl_Click时,在顺序文件Person.Txt中写入一条记录。下列能够完成该操作的事件过程是A)PrivateSubCommand1_C1ick()DimBAsBooksOpen"C:\Person.Txt"ForOutputAs#18.Name=Inputbox("输入姓名")9.Telnum=Inputbox("输入电话号码”)Write#1,B.Name,B.TelnumClose#1EndSub

42B)PrivateSubCommandl_Click()DimBAsBooksOpen"C:\Person.Txt"ForInputAs#18.Name=Inputbox("输入姓名")9.Telnum=Inputbox("输入电话号码”)Print#1,B.Name,B.TelnumClose#1EndSubC)PrivateSubCommandl_Click()DimBAsBooksOpen"C:\Person.Txt"ForOutputAs#1Name=Inputbox("输入姓名")Telnum=Inputbox("输入电话号码”)Write#1,BClose#1EndSubD)PrivateSubCommand1_C1ick()DimBAsBookOpen'C:\Person.Txt"ForInputAs#1Name=Inputbox("输入姓名")Telnum=Inputbox(〃输入电话号码”)Print#1,B.Name,B.TelnumClose#1EndSub(35)目录列表框的Path属性的作用是A)显示当前驱动器或指定驱动器上的某目录下的文件名B)显示当前驱动器或指定驱动器上的目录结构C)显示根目录下的文件名D)显示指定路径下的文件填空题2003年9月二级VB(7)以下程序的功能是:把当前目录下的顺序文件Smtextl.Txt的内容读入内存,并在文本框Textl中显示出来。请填空。PrivateSubCommand1_C1ick()DimIndataAsStringText1.Text=""Open\Smtextl.Txt”[14]As#1DoWhile[15]Input#1,IndataTextl.Text=Textl.Text&IndataLoopClose#1EndSub2004年4月二级VB(20)在窗体上画一个名称为Drivel的驱动器列表框,一个名称为Dirl的目录列表框。当改变当前驱动器时,目录列表框应该与之同步改变。设置两个控件同步的命令放在一个事件过程中,这个事件过程是A)DrivelChangeB)DrivelClickC)DirI_ClickD)Dir1Change(23)假定在窗体(名称为Forml)的代码窗口中定义如下记录类型:

43PrivateTypeAnimalAnimalnameAsString*20AcolorAsString*10EndType在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()DimRecAsAnimalOpen"CAVbtest.Dat"ForRandomAs#1Len=Len(Rec)Rec.Animalname="Cat"Rec.Acolor=MWhiteMPut#1,,RecClose#1EndSub则以下叙述中正确的是A)记录类型Animal不能在Forml中定义,必须在标准模块中定义B)如果文件C:\Vbtest.Dat不存在,则Open命令执行失败C)由于Put命令中没有指明记录号,因此每次都把记录写到文件的末尾D)语句“Put#1,,Rcc”将Animal类型的两个数据元素写到文件中七、过程2002年9月二级VB(6)在窗体上画一个名称为Commandl的命令按钮,然后编写如下程序:PrivateSubCommand1_Click()StaticXAsIntegerStaticYAsIntegerCisY=1Y=Y+5X=5+XPrintX,YEndSub程序运行时,三次单击命令按钮Commandl后,窗体上显示的结果为A)1516B)156C)1515D)56(22)下列叙述中正确的是A)在窗体的Form_Load事件过程中定义的变量是全局变量B)局部变量的作用域可以超出所定义的过程C)在某个Sub过程中定义的局部变量可以与其它事件过程中定义的局部变量同名,但其作用域只限于该过程D)在调用过程时,所有局部变量被系统初始化为0或空字符串(23)在窗体上画一个命令按钮,名称为Commandl。程序运行后,如果单击命令按钮,则显示一个输入对话框,在该对话框中输入一个整数,并用这个整数作为实参调用函数过程F1。在F1中判断所输入的整数是否是奇数,如果是奇数,过程F1返回1,否则返回0。能够正确实现上述功能的代码是A)PrivateSubCommandl_Click()X=Inputbox(“请输入整数”)A=Fl(Val(X))PrintAEndSubFunctionFl(ByrefBAsInteger)IfBMod2=0ThenReturn0ElseReturn1EndIf

44EndFunctionA)PrivateSubCommandl_Click()X=Inputbox(“请输入整数”)A=F1(Vai(X))PrintAEndSubFunctionFl(ByrefBAsInteger)IfBMod2=0ThenFl=0ElseFl=lEndIfEndFunctionB)PrivateSubCommand1Click()X=Inputbox(“请输入整数”)Fl(Vai(X))PrintAEndSubFunctionFl(ByrefBAsInteger)IfBMod2=0ThenFl=lElseFl=0EndIfEndFunctionC)PrivateSubCommand1_C1ick()X=Inputbox(“请输入整数”)Fl(Vai(X))PrintAEndSubFunctionFl(ByrefBAsInteger)IfBMod2=0ThenReturn0ElseReturn1EndIfEndFunction(24)在窗体上画一个名称为Command1的命令按钮和一个名称为Textl的文本框,然后编写如下程序:PrivateSubCommand1_Click()DimX,Y,ZAsIntegerX=5Y=7Z=0Textl.TexLCallP1(X,Y,Z)Textl.Text=Str(Z)EndSubSubPl(ByvalAAsInteger,ByvalBAsInteger,CAsInteger)C=A+BEndSub程序运行后,如果单击命令按钮,则在文本框中显示的内容是A)0B)12C)Str(Z)D)没有显示(25)以下叙述中错误的是A)如果过程被定义为Static类型,则该过程中的局部变量都是Static类型B)Sub过程中不能嵌套定义Sub过程C)Sub过程中可以嵌套调用Sub过程D)事件过程可以像通用过程一样由用户定义过程名2003年4月二级VB(15)假定有以下函数过程:FunctionFun(SAsString)AsStringDimSIAsString

45ForI=1ToLen(S)SI=Ucase(Mid(S,I,1))+S1NextIFun=SIEndFunction在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimStrlAsString,Str2AsStringStrl=Inputbox("请输入一个字符串")Str2=Fun(Strl)PrintStr2EndSub程序运行后,单击命令按钮,如果在输入对话框中输入字符串"Abcdefg”,则单击”确定“按钮后在窗体上的输出结果为A)AbcdefgB)ABCDEFGC)GfedcbaD)GFEDCBA(18)以下关于过程及过程参数的描述中,错误的是A)过程的参数可以是控件名称B)用数组作为过程的参数时,使用的是“传地址”方式C)只有函数过程能够将过程中处理的信息传回到调用的程序中D)窗体可以作为过程的参数(23)在窗体上画一个名称为Command1的命令按钮,再画两个名称分别为Labell、Label2的标签,然后编写如下程序代码:PrivateXAsIntegerPrivateSubCommand1_Click()X=5:Y=3CallProc(X,Y)Labell.Caption=XLabel2.Caption=YEndSubPrivateSubProc(ByvalAAsInteger,ByvalBAsInteger)X=A*AY=B+BEndSub程序运行后,单击命令按钮,则两个标签中显示的内容分别是A)5和3B)25和3C)25和6D)5和6(25)在窗体上画•个名称为Command1的命令按钮和三个名称分别为Labell、Label2、Label3的标签,然后编写如下代码:PrivateXAsIntegerPrivateSubCommandl_Click()StaticYAsIntegerDimZAsIntegerN=10Z=N+ZY=Y+ZX=X+ZLabel1.Caption=XLabel2.Caption=YLabel3.Caption=ZEndSub运行程序,连续三次单击命令按钮后,则三个标签中显示的内容分别是

46A)101010B)303030C)303010D)103030(28)一个工程中包含两个名称分别为FonnLForm2的窗体,一个名称为Mdlfunc的标准模块。假定在Forml,Form2和Mdlfunc中分别建立了自定义过程,其定义格式为:Forml中定义的过程:PrivateSubFrmfunctionl()EndSubForm2中定义的过程:PublicSubFrmfiinction2()EndSubMdlfunc中定义的过程:PublicSubMdlfunction()EndSub在调用上述过程的程序中,如果不指明窗体或模块的名称,则以下叙述中正确的是A)上述三个过程都可以在工程中的任何窗体或模块中被调用B)Frmfunction2和Mdlfunction过程能够在工程中各个窗体或模块中被调用C)上述三个过程都只能在各自被定义的模块中调用D)只有Mdlfunction过程能够被工程中各个窗体或模块调用2003年9月二级VB(23)设有如下通用过程:PublicFunctionF(XAsInteger)DimYAsIntegerX=20Y=2F=X*YEndFunction在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommand1Click()StaticXAsIntegerX=10Y=5Y=F(X)PrintX;YEndSub程序运行后,如果单击命令按钮,则在窗体上显示的内容是A)105B)205C)2040D)1040(24)设有如下通用过程:PublicSubFun(A(),ByvalXAsInteger)ForI=1To5X=X+A(I)NextEndSub在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮,然后编写如下的事件过程:PrivateSubCommandl_Click()DimArr(5)AsVariantForI=1To5Arr(I)=INext

47N=10CallFun(Arr(),N)Textl.Text=NEndSub程序运行后,单击命令按钮,则在文本框中显示的内容是A)10B)15C)25D)242004年4月二级VB(11)以下关于函数过程的叙述中,正确的是A)函数过程形参的类型与函数返回值的类型没有关系B)在函数过程中,过程的返回值可以有多个C)当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递D)如果不指明函数过程参数的类型,则该参数没有数据类型(12)以下关于变量作用域的叙述中,正确的是A)窗体中凡被声明为Private的变量只能在某个指定的过程中使用B)全局变量必须在标准模块中声明C)模块级变量只能用Private关键字声明C)Static类型变量的作用域是它所在的窗体或模块文件(19)一个工程中含有窗体Forml、Form2和标准模块Modell,如果在Forml中有语句PubilcXAsInteger,在Modell中有语句PubilcYAsInteger,则以F叙述中正确的是A)变量X、丫的作用域相同B)丫的作用域是ModellC)在Forml中可以直接使用XD)在Form2中可以直接使用X和丫(24)在窗体上画一个名称为Textl的文本框,一个名称为Commandl的命令按钮,然后编写如下事件过程和通用过程:PrivateSubCommandl_Click()N=Val(Textl.Text)IfN\2=N/2ThenF=F1(N)ElseF=F2(N)EndIfPrintF;NEndSubPublicFunctionFl(ByrefX)x=x*xF1=X+XEndFunctionPublicFunctionF2(ByvalX)x=x*xF2=X+X+XEndFunction程序运行后,在文本框中输入6,然后单击命令按钮,窗体上显示的是A)7236B)10836C)726D)1086(27)在以下描述中正确的是A)标准模块中的任何过程都可以在整个工程范围内被调用B)在一个窗体模块中可以调用在其他窗体中被定义为Public的通用过程C)如果工程中包含SubMain过程,则程序将首先执行该过程D)如果工程中不包含SubMain过程,则程序一定首先执行第一个建立的窗体(28)在窗体上画一个名称为Commandl的命令按钮,然后编写如下通用过程和命令按钮的事件过程:PrivateFunctionF(MAsInteger)IfMMod2=0Then

48F=MElseF=1EndIfEndFunctionPrivateSubCommandl_Click()DimIAsIntegerS=0ForI=1To5S=S+F(I)NextPrintSEndSub程序运行后,单击命令按钮,在窗体上显示的是A)11B)10C)9D)82004年9月二级VB(8)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubConunandlClickOStaticXAsIntegerCisFor1=1To2Y=Y+XX=X+2NextPrintX,YEndSub程序运行后,连续三次单击Commandl按钮后,窗体上显示的是A)42B)1218C)1230D)46(21)设一个工程由两个窗体组成,其名称分别为Forml和Form2,在Forml上有一个名称为Commandl的命令按钮。窗体Forml的程序代码如下:PrivateSubCommandl_Click()DimAAsIntegerA=10CallG(Form2,A)EndSubPrivateSubG(FAsForm,XAsInteger)Y=IIf(X>10,100,-100)F.ShowF.Caption=YEndSub运行以上程序,正确的结果是A)Forml的Caption属性值为100B)Form2的Caption属性值为TOOC)Forml的Caption属性值为TOOD)Form2的Caption属性值为100(22)在窗体上画一个名称为Commandl的命令按钮,并编写如下程序:PrivateSubCommand1ClickODimXAsIntegerStaticYAsIntegerX=10Y=5

49CallFl(X,Y)PrintX,YEndSubPrivateSubFl(ByrefXIAsInteger,Y1AsInteger)Xl=Xl+2Yl=Yl+2EndSub程序运行后,单击命令按钮,在窗体上显示的内容是A)105B)125C)107D)127(23)设有如下程序OptionBase1PrivateSubCommand1ClickODimA(10)AsIntegerDimNAsIntegerN=Inputbox("输入数据”)IfN<10ThenCallGetarray(A,N)EndIfEndSubPrivateSubGetarray(B()AsInteger,NAsInteger)DimC(10)AsIntegerJ=0For1=1ToNB(I)=Cint(Rnd()*100)IfB(I)/2=B(I)\2ThenJ=J+1C(J)=B(I)EndIfNextPrintJEndSub以下叙述中错误的是A)数组B中的偶数被保存在数组C中B)程序运行结束后,在窗体上显示的是C数组中元素的个数C)Getarray过程的参数N是按值传送的D)如果输入的数据大于10,则窗体上不显示任何显示2005年4月二级VB(29)在窗体上画一个名称为Comamndl的命令按钮,然后编写如下通用过程和命令按钮的事件过程:PrivateFunctionFun(ByvaIMAsInteger)IfMMod2=0ThenFun=2ElseFun=1EndIfEndFunctionPrivateSubCommandl_Click()DimIAsInteger,SAsIntegerS=0ForI=1To5S=S+Fun(I)Next

50PrintSEndSub程序运行后,单击命令按钮,则窗体上显示的是:A)6B)7C)8D)9(35)设有如下通用过程:PublicSubFun(A()AsInteger,XAsInteger)ForI=1To5X=X+A⑴NextEndSub在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()DimArr(5)AsInteger,NAsIntegerForI=1To5Arr(I)=1+1NextFunArr,NText1.Text=Str(N)EndSub程序运行后,单击命令按钮,则在文本框中显示的内容是A)30B)25C)20D)15(34)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:DimSWAsBooleanFunctionFunc(XAsInteger)AsIntegerIfX<20ThenY=XElseY=20+XEndIfFunc=YEndFunctionPrivateSubCommand1_C1ick()DimIntnumAsIntegerIntnum=Inputbox(,H,)IfSWThenPrintFunc(Intnum)EndIfEndSubPrivateSubForm_Mousedown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)SW=FalseEndSubPrivateSubForm_Mouseup(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)SW=TrueEndSub程序运行后,单击命令按钮,将显示一个输入对话框,如果在对话框中输入25,则程序的执行结果是:A)输出0B)输出25C)输出45D)无任何输出2005年9月(27)以下关于函数过程的叙述中,正确的是A)如果不指明函数过程参数的类型,则该参数没有数据类型

51B)函数过程的返回值可以有多个C)当数组作为函数过程的参数时,既能以传值方式传递,也能以引用方式传递D)函数过程形参的类型与函数返回值的类型没有关系(28)函数过程F1的功能是:如果参数B为奇数,则返回值为1,否则返回值为0。以下能正确实现上述功能的代码是A)FunctionF1(BAsInteger)IfBMod2=0ThenReturn0ElseReturn1EndIfEndFunctionB)FunctionF1(BAsInteger)IfBMod2=0ThenFl=0ElseFl=1EndIfEndFunctionC)FunctionF1(BAsInteger)IfBMod2=0ThenFl=1ElseFl=0EndIfEndFunctionD)FunctionF1(BAsInteger)IfBMod2o0ThenReturn0ElseReturn1EndIfEndFunction填空题2002年9月二级VB(7)在窗体上画一个命令按钮,其名称为Command],然后编写如下程序:FunctionM(XAsInteger,YAsInteger)AsIntegerM=Iif(X>Y,X,Y)EndFunctionPrivateSubCommandl_Click()DimAAsInteger,BAsIntegerA=100B=200PrintM(A,B)EndSub程序运行后,单击命令按钮,输出结果为[12]o2003年4月二级VB(7)设有如下程序PrivateSubForm_Click()DimAAsInteger,BAsIntegerA=20:B=50PlA,BP2A,BP3A,BPrint”A=”;A,“B=”;B

52EndSubSubP1(XAsInteger,ByvalYAsInteger)X=X+10Y=Y+20EndSubSubP2(ByvalXAsInteger,YAsInteger)X=X+10Y=Y+20EndSubSubP3(ByvalXAsInteger,ByvalYAsInteger)X=X+10Y=Y+20EndSub该程序运行后,单击窗体,则在窗体上显示的内容是:A=[9]和B=[10]o(10)设有如下程序PrivateSubSearch(A()AsVariant,ByvalKeyAsVariant,Index%)Dim1%ForI=Lbound(A)ToUbound(A)IfKey=A(I)ThenIndex=IExitSubEndIfNextIIndex=-1EndSubPrivateSubForm_Load()ShowDimB()AsVariantDimNAsIntegerB=Array(l,3,5,7,9,11,13,15)CallSearch(B,11,N)PrintNEndSub程序运行后,输出结果是[15]o2004年4月二级VB⑺在窗体上画两个组合框,其名称分别为Combol、Combo2,然后画两个标签,名称分别为Labell、Label2,如图所示,程序运行后,如果在某个组合框中选择一个项目,则把所选中的项目在其下面的标签中显示出来。请填空。PrivateSubCombol_Click()CallShowitem(Combol,Label1)EndSubPrivateSubCombo2_Click()CallShowitem(Combo2,Label2)EndSubPublicSubShowitem(TmpcomboAsCombobox,TmplabelAsLabel)[10].Caption=[11].TextEndSub(9)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:OptionBase1PrivateSubCommandl_Click()

53DimA(10)AsIntegerForI=1To10A(I)=INextCallSwap([13])ForI=lTolOPrintA(I);NextEndSubSubSw叩(B()AsInteger)N=[14]ForI=1ToN/2T=B(I)B(I)=B(N)B(N)=T[15]NextEndSub上述程序的功能是,通过调用过程Swap,调换数组中数值的存放位置,即A(l)与A(10)的值互换,A(2)与A(9)的值互换A(5)与A(6)的值互换。请填空。2004年9月二级VB(30)假定一■个工程由一个窗体文件Forml和两个标准模块文件Model1及Model2组成。Modell代码如下:PublicXAsIntegerPublicYAsIntegerSubSl()X=1S2EndSubSubS2()Y=10Forml.ShowEndSubModel2的代码如下:SubMain()SIEndSub其中SubMain被设置为启动过程。程序运行后,各模块的执行顺序是A)Forml->Modell->Mode12B)Modell->Model2->FormlC)Model2->Modell->FormlD)Model2->Forml->Mode112005年9月(6)设有以下函数过程:FunctionFun(MAsInteger)AsIntegerDimKAsInteger,SumAsIntegerSum=0ForK=MTo1Step-2Sum=Sum+KNextK

54Fun=SumEndFunction若在程序中用语句S=Fun(10)调用此函数,则S的值为【6】部分完善程序题2002年9月二级VB(5)以下程序的功能是:从键盘上输入若干个学生的考试分数,当输入负数时结束输入,然后输出其中的最高分数和最低分数。请在[8]和[9]处填入适当的内容,将程序补充完整。PrivateSubForm_Click()DimXAsSingle,AmaxAsSingle,AminAsSingleX=InputboxC4EnterAScore")Amax=XAmin=XDoWhile[8]IfX>AmaxThenAmax=XEndIfIf[9]ThenAmin=XEndIfX=InputboxC4EnterAScore”)LoopPrint"Max=";AmaxJMin=";AminEndSub2003年4月二级VB(6)以下程序的功能是:生成20个200到300之间的随机整数,输出其中能被5整除的数并求出它们的和。请填空。PrivateSubCommandl_Click()ForI=1To20X=Int([6]*200+100)If[7]=0ThenPrintXS=S+[8]EndIfNextIPrint“Sum=SEndSub(8)在窗体上画一个名称为Commandl的命令按钮,编写如下事件过程PrivateSubCommandl_Click()DimAAsStringA=[11]ForI=1To5PrintSpace(6-I);Mid$(A,6-1,2*1-1)NextIEndSub程序运行后,单击命令按钮,要求窗体上显示的输出结果为5456345672345678

55123456789请填空。2004年9月二级VB(3)窗体上有一个名称为Listl的列表框,一个名称为Textl的文本框,一个名称为Label1>Caption属性为“Sum”的标签,一个名称为Commandl、标题为“计算”的命令按钮。程序运行后,将把1〜100之间能够被7整除的数添加到列表框。如果单击“计算”按钮,则对Listl中的数进行累加求和,并在文本框中显示计算结果,如图所示。以下是实现上述功能的程序,请填空。PrivateSubFormLoad()For1=1To100IfIMod7=0Then_3—EndIfNextEndSubPrivateSubCommandl_Click()Sum=0For1=0To_4Sum=Sum+_5NextTextl.Text=SumEndSub(4)本程序的功能是利用随机数函数模拟投币,方法是:每次随机产生一个0或1的整数,相当于一次投币,1代表正面,。代表反面。在窗体上有三个文本框,名称分别是Textl、Text2、Text3,分别用于显示用户输入投币总次数、出现正面的次数和出现反面的次数,如图所示。程序运行后,在文本框Textl中输入总次数,然后单击“开始”按钮,按照输入的次数模拟投币,分别统计出现正面、反面的次数,并显示结果。以下是实现上述功能的程序,请填空。总次数眄正面(1)F反面RPrivateSubCommandl_Click()RandomizeN=Cint(Textl.Text)Nl=0N2=0For1=1To_6_R=Int(Rnd*2)IfR=_7ThenN1=N1+1ElseN2=N2+1EndIf

56NextText2.Text=NlText3.Text=N2EndSub(5)阅读程序:OptionBase1PrivateSubForm_Click()DimA(3)AsIntegerPrint”输入的数据是:”;For1=1To3A(I)=Inputbox("输入数据”)PrintA(I);NextPrintIfA(1)A(3)ThenM=A(2)ElseifA(1)>A(3)ThenM=—9ElseM=_10EndIfPrint”中间数是:〃;MEndSub程序运行后,单击窗体,在输入对话框中分别输入三个整数,程序将输出三个数中的中间数,如图所示。请填空。(6)在窗体上画一个名称为“Commandl”,标题为“计算”的命令按钮,再画7个标签,其中5个标签组成名称为Label1的控件数组;名称为Label2的标签用于显示计算结果,其Caption属性的初始值为空;标签Label3的标题为“计算结果”。运行程序时会自动生成5个随机数,分别显示在标签控件数组的各个标签中,如图所示。单击“计算”按钮,则将标签数组各元素的值累加,然后计算结果显示在Label2。请填空。PrivateSubCommand1_C1ick()Sum=0For1=0To4Sum=Sum+_11_Next

5712_=SumEndSub(7)在窗体上画两个名称分别为Commandl和Command2、标题分别为“初始化”和“求和”的命令按钮。程序运行后,如果单击“初始化”命令按钮,则对数组A的各元素赋值;如果单击“求和”命令按钮,则求出数组A的各元素之和,并在文本框中显示出来,如图所示。请填空。OptionBase1DimA(3,2)AsIntegerPrivateSubCommandlClickOFor1=1To3ForJ=1To2_13_=I+JNextJNextIEndSubPrivateSubCommand2Click()ForJ=1To3For1=1To2S=S+_14—NextINextJTextl.Text=—15—EndSub2005年4月二级VB(10)设有如下程序:OptionBase1PrivateSubCommand1_Click()DimArrlDimMinAsInteger,IAsIntegerArrl=Array(12,435,76,-24,78,54,866,43)Min=[12]ForI=2To8IfArrl(I)

58LoopTextl.Text=WholeSClose#1Open,,D:\Test\Smtext2.Txt"ForOutputAs#1Print#1,[15]Close#1EndSub上述程序的功能是,把磁盘文件Smtextl.Txt的内容读到内存并在文本框中显示出来,然后把该文本框中的内容存入磁盘文件Smtext2.Txt.请填空2005年9月二级VB(7)在窗体上画一个命令按钮和一个文本框,然后编写命令按钮的Click事件过程。程序运行后,在文本框中输入一串英文字母(不区分大小写),单击命令按钮,程序可找出未在文本框中输入的其他所有英文字母,并以大写方式降序显示到Textl中。例如,若在Textl中输入的是Abdfdb,则单击Command1按钮后Textl中显示的字符串是ZYXWVUTSRQPONMLKJIHGECo请填空。PrivateSubCommand1_Click()DimStrAsString,SAsString,CAsStringStr=Ucase(Textl)S=C=WhileC>=IfInstr(Str,C)=OThenS=[7]EndIfC=Chr$(Asc(C)[8])WendIfSo,H,ThenTextl=SEndIfEndSub(8)在N个运动员中选出任意R个人参加比赛,有很多种不同的选法,选法的个数可以用公式计算。窗体中3个文本框的名称依次是Textl、Text2、Text3。程序运行时在Textl、Text2中分别输入N和R的值,单击Commandl按钮即可求出选法的个数,并显示在Text3文本框中(见下图)。请填空。PrivateSubCommandl_Click()DimRAsInteger,NAsIntegerN=TextlR=Text2Text3=Fun(N)/Fun([9])/Fun(R)EndSubFunctionFun(NAsInteger)AsLongDimTAsLong[10]ForK=1ToNT=T*KNextFun=TEndFunction(9)以下是一个比赛评分程序。在窗体上建立一个名为Textl的文本框数组,然后画一个名为Text2的文本框和名为Commandl的命令按钮。运行时在文本框数组中输入7个分数,单击“计算得分”命令按钮,则最后得分显示在Text2文本框中(去掉一个最高分和一个最低分后的平均分即为最后得分),如图所示。请填空。

59PrivateSubCommand1_Click()DimKAsIntegerDimSumAsSingle,MaxAsSingle,MinAsSingleSum=Text1(0)Max=Text1(0)Min=[11]ForK=[12]To6IfMaxTextl(K)ThenMin=Text1(K)EndIfSum=Sum+Textl(K)NextKText2=([13])/5EndSub(10)如图所示,在列表框Listl中已经有若干人的简单信息,运行时在Textl文本框(即“查找对象”右边的文本框)输入一个姓或姓名,单击“查找”按钮,则在列表框中进行查找,若找到,则把该人的信息显示在Text2文本框中。若有多个匹配的列表项,则只显示第1个匹配项;若未找到,则在Text2中显示“查无此人”。请填空。PrivateSubCommand1_Click()DimKAsInteger,NAsInteger,FoundAsBooleanFound=FalseN=Len([14])K=0WhileK

60公共基础部分2005年4月选择题(1)数据的存储结构是指。A)存储在外存中的数据B)数据所占的存储空间量C)数据在计算机中的顺序存储方式D)数据的逻辑结构在计算机中的表示(2)下列关于栈的描述中错误的是。A)栈是先进后出的线性表B)栈只能顺序存储C)栈具有记忆作用D)对栈的插入与删除操作中,不需要改变栈底指针(3)对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是.A)冒泡排序为n/2B)冒泡排序为nC)快速排序为nD)快速排序为n(n-1)/2(4)对于长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为.A)Iog2nB)n/2C)nD)n+1(5)下列对于线性链表的描述中正确的是.A)存储空间不一定是连续,且各元素的存储顺序是任意的B)存储空间不一定是连续,目前件元素一定存储在后件元素的前面C)存储空间必须连续,且前件元素一定存储在后件元素的前面D)存储空间必须连续,且各元素的存储顺序是任意的(6)下列对于软件测试的描述中正确的是oA)软件测试的目的是证明程序是否正确B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误D)软件测试的目的是使程序符合结构化原则(7)为了使模块尽可能独立,要求«A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(8)下列描述中正确的是oA)程序就是软件B)软件开发不受计算机系统的限制C)软件既是逻辑实体,又是物理实体D)软件是程序、数据与相关文档的集合(9)数据独立性是数据库技术的重要特点之一。所谓数据独立性是指。A)数据与程序独立存放B)不同的数据被存放在不同的文件中C)不同的数据只能被对应的应用程序所使用D)以上三种说法都不对(10)用树形结构表示实体之间联系的模型是OA)关系模型B)网状模型C)层次模型D)以上三个都是填空题(1)某二叉树中度为2的结点有18个,则该二叉树中有【1】个叶子结点。(2)在面向对象方法中,类的实例称为【2】。(3)诊断和改正程序中错误的工作通常称为【3】o(4)在关系数据库中,把数据表示成二维表,每一个二维表称为【4】o(5)问题处理方案的正确而完整的描述称为【5】2005年9月选择题

61(1)下列叙述中正确的是。A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试(2)下列数据结构中,能用二分法进行查找的是。A)顺序存储的有序线性表B)线性链表C)二叉链表D)有序线性链表(3)下列关于栈的描述正确的是。A)在栈中只能插入元素而不能删除元素B)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端排入元素,而在另一端删除元素(4)下列叙述中正确的是oA)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(5)下列描述中正确的是。A)软件工程只是解决软件项目的萱理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题(6)在软件设计中,不属于过程设计工具的是。A)PDL(过程设计语言)B)PAD图C)N-S图D)DFD图(7)下列叙述中正确的是。A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决A)数据共享问题B)数据安全问题C)大量数据存储问题D)简化数据维护(9)设有如下关系表:RSTABCABCABC112313112223313223则下列操作中正确的是1C)T=RxSD)T=R/SA)T=RCISB)T=RUS(10)数据库系统的核心是oA)数据模型B)数据库管理系统C)数据库D)数据库管理员填空题(1)数据宜理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是_LU_。(2)算法复杂度主要包括时间复杂度和复杂度(3)在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)。其中13】的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。(4)一棵二叉树第六层(根结点为第一层)的结点数最多为【4】个。(5)数据结构分为逻辑结构和存储结构,循环队列属于【5】结构。

62附全国等级考试历年VB笔试试卷参考答案2002年9月参考答案一、选择题(每小题2分,共70分)(1)c⑵A(3)C(4)A(5)D(6)B⑺B(8)D(9)D(10)B(11)D(12)D(13)D(14)C(15)A(16)B(17)B(18)B(19)A(20)D(21)C(22)C(23)B(24)B(25)C(26)D(27)A(28)D(29)C(30)A(31)C(32)B(33)A(34)B(35)A二、填空题(每空2分,共30分)[1]Change[2]Value3]Option(I).Value[4]Opt[5]Label4.Caption或Forml.Label4.Caption或Me.Label4.Caption或Command1.Parent_Label4.Caption[6]Change[7]Popupmenu[8]X>=0[9]XVAmin或X<=Amin>X或Amin〉=X[10]计算机[11]等级考试[12]200[13]Interval[14]Listl_Dblclick或Forml.Listl_Dblclick或Me.Listl_Dblclick[15]Listl.Text或Listl或Forml.Listl.Text或Me.Listl.Text或Forml.Listl或Me.Listl2003年4月参考答案:一、选择题二、:[1](4)[5][7]填空题I组合框或组合[2]顺序访问方式或顺序访问【3】9Picturel.Picture=Loadpicture('D:\Pic\A.Jpg")或Picturel=Loadpicture(*D:\Pic\A.Jpg*)Timer[6]Rnd或Rnd(N),其中N为任意整数XMod5或Int(X/5)-X/5或X/5-Int(X/5)或Cint(X/5)-X/5或X/5-Cint(X/5)或Round(X/5)-X/5或X/5-Round(X/5)或X-(X\5)*5或(X\5)*5-X或Fix(X/5)-X/5或X/5-Fix(X/5)[8]X[9]30[12]Keypress[13]2003年9月参考答案一、选择题[10]70Combo1.List(I)[11]"123456789"[14]Additem[15]5(1)(6)(11)(16)(21)(26)二、:CAAABD(2)(7)(12)(17)(22)(27)ABDDCC(3)(8)(13)(18)(23)(28)BDACCD(4)(9)(14)(19)(24)(29)BCAAAC(5)(10)(15)(20)(25)(30)CBBACD[5][8]填空题5.61000BASIC[12]Max[2][6][9][13]5True0Max[3][4]a或任何非0数值【7】Time或[10]Listl.Listindex[11]Time$Listl.ListcountArrl(I)[14]ForInput[15]NotEOF(1)(1)D(2)A(3)D(4)B(5)B(6)A(7)C(8)C(9)A(10)1(11)D(12)B(13)B(14)D(15)1(16)A(17)B(18)C(19)D(20),(21)D(22)C(23)B(24)B(25)i(26)C(27)C(28)D(29)C(30),

63DDACA

64一、选择题((1)—(20)每小题2分,(21)—(30)每小题2分,共70分)(1)-(10)BCAACDDBAB(11)-(20)DACBDABBDD(21)-(30)BDCBCAABDC二、填空题(每空2分,共30分)[1]"Shanghai”[2]3[4]Listl.Listcount-1[6]N[7]1[8]T[3]Listl.AdditemI[5]Listl.List(I)[9]A(3)[10]A(l)[11]Label1(I).Caption[12]Labe12.Caption[13]A(I,J)[14]A(J,I)[15]S2005年4月参考答案一、选择题:01—05DBDCA6--10CBDDC11-15ABBCD16-20CDABD21-25ABCDB26-30CDBBA31-35CDDDA二、填空题:[1119【2】对象[5]算法【6】12345.68[8]VBProgramming[10]求1-8的和[12]Arrl(l)[14]EOF(l)【3】程序调试【4】关系[7]VB程序设计[9]10[11]36[13]Min=Arrl(I)[15]Textl.Text(§EWholeS)2005年9月参考答案一、选择题[1-5]CACDC[11-15]BCCDC[21-25]DAADC[6-10]DAABB[16-20]CABBA[26-30]ADBAC2004年4月参考答案一、选择题(⑴一(20)每小题2分,(21130)每小题2分,共70分)(1)B(2)D⑶A(4)A⑸C(6)D(7)C(H)A(12)B(16)B(17)D(21)B(22)A(26)C(27)A二、填空题(每空2分,[1].Bas(8)D(9)B(13)C(14)C(18)C(19)C(23)D(24)A(28)C(29)D共30分)[2]Mousedown(10)c(15)A(20)A(25)B(30)A[3]Popupmenu[4]Interval[5][7]500[6](Cos(A+B))A2/(3*X)+5Picturel.Picture=LoadpictureCtC:\MoonJpg^^)[8]Index(91Font[10]Tmplabel[11]Tmpcombo[12][13]A()[14]Ubound(B)[15]N=N-12004年9月参考答案:

65[31-35]CCDAB二、填空题[1]数据库系统[2]空间[3]驱动模块[4]32[5]存储结构[6]30[7]S&C【8】-1[9]N-R[10]T=1[11]Text1(0)[12]1【13】(Sum-Max-Min)[14]Textl.Text[15]Listl.List(K)2006年4月参考答案—'、选择题(1)D(2)A(3)D(4)B(5)A(6)D(7)C(8)D(9)A(10)C(11)D(12)C(13)B(14)A(15)B(16)D(17)B(18)A(19)A(20)A(21)B(22)C(23)D(24)A(25)D(26)B(27)D(28)C(29)C(30)A(31)B(32)B(33)C(34)C(35)B二、填空题[1]45【2】类【3】关系【4】静态分析(静态测试)【5】物理独立性【6】12,345.68[7]Max[8]Min>arr(i)[9]-5[10]5[11]ABCD[12]DialogTitle[13]Keyascii[14]"END"[15]Textl.tex2006年9月参考答案一、选择题:01—05DACBD06—10CDBBA11—15ACDBB16—20DBBCD21—25CDBAB26—30ACDCB31—35CBACD二、填空题:1、32、调试3、元组4、栈5、线性6、X%<100ANDX%>=07、CHANGE8、6-i9、1010、1011、a((i-l)*10+j)12、combol.list(i)13、additem14、input2007年4月参考答案一、选择:15、noteof(1)1-10bdacdcabca11-20ddbcbabadc21-30abdcacddbc31-35bcada二、填空:(1)63(2)黑盒(3)数据库管理系统;(4)开发(5)数据字典(6)0(7)N-l(8)#2(9)1(10)0(11)outchar(12)opl_click2007年9月参考答案一、选择题(13)3(14)caption(15)4riODBCAACCABA1P20BDCCABAACA2T30DBABCBDCDB3「35DCDBA二、填充题【1】无歧义性【2】白盒【3】顺序结构【4】ACBDFEHGP[5]实体集【6】Combol.List(Combol.Listindex)[7]pos[8]Hscrolll.Value[9]CD1.FileName[10]ch$[11]9[12]x[13]Textl.Text或Textl[14]1[15]SetFocus2008年4月参考答案

66[3]:[7][11][141一、选择题P10CABBADBCDC21〜30CBADADCCBA二、填充题[1]输出结果[5]数据操纵语言[9]Ubound(b)或10[11]d:\temp\tel.txt1T20DABCBDCACA31〜35ACBDBD[2]16[6]x>6[10]n=n-1[13]EorInputA[4]二维表6[8]a()MlFiles(*.*)#2[15]NotEOF(2)

67第一章数据结构与算法1.1算法算法:是指解题方案的准确而完整的描述。算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括:(1)可行性:(2)确定性,算法中每一步骤都必须有明确定义,不允许有模棱两可的解释,不允许有多义性:(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。算法的控制结构:顺序结构、选择结构、循环结构。算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术、回溯法。算法复杂度:算法时间复杂度和算法空间复杂度。算法时间复杂度是指执行算法所需要的计算工作量。一般来说,算法的工作量用其执行的基本运算次数来度量,而算法执行的基本运算次数是问题规模的函数。在同一个问题规模下,用平均性态和最坏情况复杂性来分析。一般情况下,用最坏情况复杂性来分析算法的时间复杂度。算法空间复杂度是指执行这个算法所需要的内存空间。1.2数据结构的基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。数据结构是指相互有关联的数据元素的集合。数据结构是反映数据元素之间关系的数据元素集合的表示。数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。(逻辑关系,与在计算机内的存储位置无关)一个数据结构中的各数据元素在计算机存储空间中的位置关系与逻辑关系有可能不同。数据的存储结构是数据的逻辑结构在计算机存储空间中的存放形式。常用的存储结构有顺序、链接、索引等。根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分为线性结构和非线性结构。线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。非线性结构:不满足线性结构条件的数据结构。1.3线性表及其顺序存储结构线性表山一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。

68如:一个N维向量、矩阵在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。非空线性衣的结构特征:(1)有且只有一个根结点al,它无前件;(2)有且只有一个终端结点an,它无后件;(3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。结点个数n称为线性表的长度,当n=0时,称为空表。线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的:(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。ai的存储地址为:ADR(ai)=ADR(al)+(i-l)k,,ADR(al)为第一个元素的地址,k代表每个元素占的字节数。顺序表的运算:插入、删除。1.4栈和队列栈是限定在一端进行插入与删除的线性表,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。栈按照“先进后出"(FILO)或“后进先出"(LIFO)组织数据,栈具有记忆作用。用top表示栈顶位置,用bottom表示栈底。栈的顺序存储用一维数组S(l:m)作为栈的顺序存储空间,M为栈的最大容量。S(bottom)表示栈底元素,s(top)为栈顶元素,top=0表示栈空,top=m表示栈满。栈的基本运算:(1)插入元素称为入栈运算;(top=top+l;将新元素插入到栈顶指针指向的位置)上溢(2)删除元素称为退栈运算:(将栈顶指针指向的元素赋给指定的变量,top=top-l)下溢(3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。队列队列是指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。Rear指针指向队尾,front指针指向队头。队列是“先进先出"(FIFO)或“后进后出"(LILO)的线性表。队列的顺序存储与栈类似,用一维数组Q(1:m)作为队列的顺序存储空间队列运算(1)入队运算:从队尾插入一个元素;(2)退队运算:从队头删除一个元素。循环队列:在循环队列结构中,当存储空间的最后一个位置已被使用而要进行入队运算时,只要存储空间的第一个位置空闲,就可将元素加入到第一个位置,即将存储空间的第一个位置作为队尾。从Front指针指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素。

69循环队列的初始状态为空:rear=front=m当循环队列满时,rear=Front为区别队满还是队空,增加标志Sos=0表示队列空,s=l且front=rear表示队列满1.5线性链表对于元素变动频繁的大线性表不宜采用顺序存储结构,而应采用链式存储结构。在链式存储结构中,数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。结点由两部分组成:(1)用于存储数据元素值,称为数据域;(2)用于存放指针,称为指针域,用于指向前一个或后一个结点。在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。链式存储方式既可用于表示线性结构,也可用于表示非线性结构。线性链表,HEAD称为头指针,HEAD-NULL(或0)称为空表,如果是两指针:左指针(Llink)指向前件结点,右指针(Rlink)指向后件结点。线性链表的基本运算:查找、插入、删除。1.6树与二叉树树是一种简单的非线性结构,所有元素之间具有明显的层次特性。在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度。度为2的树称为二叉树。二叉树的特点:(1)非空二叉树只有一个根结点;(2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。二叉树的基本性质:(1)在二叉树的第k层上,最多有2卜'(1<21)个结点;

70(2)深度为m的二叉树最多有2--1个结点;(3)度为0的结点(即叶子结点)总是比度为2的结点多一个;

71(4)具有n个结点的二叉树,其深度至少为[log2"]+l,其中[log2“]表示取log2"的整数部分:满二叉树是指除最后一层外,每一层上的所有结点有两个子结点,满二叉树的性质:第k层上有2k,个结点,深度为m的满二叉树有2--1个结点。完全二叉树是指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。由满二叉树与完全二叉树的特点可以看出,满二义树也是完全二叉树,完全二叉树一般不是满二叉树。完全二叉树的性质:(1)具有n个结点的完全二叉树的深度为[log2"]+l;(2)设完全二叉树共有n个结点。如果从根结点开始,按层序(每一层从左到右)用自然数1,2,…,n给结点进行编号(k=l,2-.n),有以下结论:①若k=l,则该结点为根结点,它没有父结点;若k>l,则该结点的父结点编号为INT(k/2);②若2k〈n,则编号为k的结点的左子结点编号为2k;否则该结点无左子结点(也无右子结点);③若2k+lWn,则编号为k的结点的右子结点编号为2k+l;否则该结点无右子结点。二叉树存储结构采用链式存储结构,对于满二叉树与完全二叉树可以按层序进行顺序存储。二叉树的遍历:(1)前序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树;(2)中序遍历(LDR),首先遍历左子树,然后访问根结点,最后遍历右子树:(3)后序遍历(LRD)首先遍历左子树,然后访问遍历右子树,最后访问根结点。例:设有如下的二叉树

72其前序遍历(DLR)的结果为:ABDEHICFG其中序遍历(LDR)的结果为:DBHEIAFCG其后序遍历(LRD)的结果为:DHIEBFGCA1.7查找技术顺序查找的使用情况:(1)线性表为无序表;(不管是顺序存储结构还是链式存储结构)(2)表采用链式存储结构。(即使是有序线性表)二分法查找只适用于顺序存储的有序表,对于长度为n的有序线性表,二分查找最坏情况只需比较log2"次,顺序查找需要比较n次。2.8排序技术排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。交换类排序法:假设线性表的长度为n(1)冒泡排序法在最坏情况下,需要比较的次数为n(n-D/2;(2)快速排序法在最坏情况下,需要比较的次数为n(n-D/2插入类排序法:(1)简单插入排序法,最坏情况需要n(n-l)/2次比较;(2)希尔排序法,最坏情况需要OS'")次比较。选择类排序法:(1)简单选择排序法,最坏情况需要n(n-l)/2次比较;(2)堆排序法,最坏情况需要0(nlog2")次比较。

73第二章程序设计基础1.1程序设计设计方法和风格如何形成良好的程序设计风格1、源程序文档化;2、数据说明的方法;3、语句的结构;4、输入和输出。注释分序言性注释和功能性注释,语句结构清晰第一、效率第二。2.2结构化程序设计结构化程序设计方法的四条原则是:1.自顶向下;2.逐步求精;3.模块化:4.限制使用goto语句。结构化程序的基本结构和特点:(1)顺序结构:一种简单的程序设计,最基本、最常用的结构;(2)选择结构:又称分支结构,包括简单选择和多分支选择结构,可根据条件,判断应该选择哪一条分支来执行相应的语句序列;(3)重复结构:又称循环结构,可根据给定条件,判断是否需要重复执行某一相同程序段。2.3面向对象的程序设计面向对象的程序设计:以60年代末挪威奥斯陆大学和挪威计算机中心研制的SIMULA语言为标志。面向对象方法的优点:(1)与人类习惯的思维方法一致;(2)稳定性好;(3)可重用性好;(4)易于开发大型软件产品:(5)可维护性好。对象是面向对象方法中最基本的概念,可以用来表示客观世界中的任何实体,对象是实体的抽象。面向对象的程序设计方法中的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。属性即对象所包含的信息,操作描述了对象执行的功能,操作也称为方法或服务。对象的基本特点:(1)标识惟一性;(2)分类性;(3)多态性;(4)封装性;(5)模块独立性好。类是指具有共同属性、共同方法的对象的集合。所以类是对象的抽象,对象是对应类的一个实例。消息是一个实例与另一个实例之间传递的信息。消息的组成包括(1)接收消息的对象的名称:(2)消息标识符,也称消息名;(3)零个或多个参数。继承是指能够直接获得已有的性质和特征,而不必重复定义他们。继承分单继承和多重继承。单继承指一个类只允许有一个父类,多重继承指一个类允许有多个父类。多态性是指同样的消息被不同的对象接受时可导致完全不同的行动的现象。第三章软件工程基础3.1软件工程基本概念计算机软件是包括程序、数据及相关文档的完整集合。软件的特点包括:

74(1)软件是一种逻辑实体;(2)软件的生产与硬件不同,它没有明显的制作过程;(3)软件在运行、使用期间不存在磨损、老化问题;(4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;(5)软件复杂性高,成本昂贵;(6)软件开发涉及诸多的社会因素。软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题(软件开发成本和进度无法控制;质量难以保证;软件维护程度低)软件危机主要表现在成本、质量、生产率等问题。软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。软件工程包括3个要素:方法、工具和过程。方法是完成软件工程项目的技术手段:工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制和管理。软件工程的核心思想是把软件产品看作是一个工程产品来处理。软件工程过程:是把输入转化为输出的一组彼此相关的资源和活动,包含4种基本活动:(1)P(Plan)——软件规格说明;(功能及其运行时的限制)(2)D(Do)——软件开发:(产生满足规格说明的软件)(3)C(Check)——软件确认;(确认软件能够满足客户提出的要求)(4)A(Action)——软件演进。软件周期:软件产品从提出、实现、使用维护到停止使用退役的过程。软件生命周期三个阶段:软件定义、软件开发、运行维护软件定义阶段:(1)可行性研究与计划制定;(2)需求分析:软件开发阶段:(3)软件设计;(概要设计和详细设计)(4)软件实现;(5)软件测试:软件维护阶段:(6)运行和维护。(7)退役软件工程的目标与原则:目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。基本目标:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发软件易于移植;需要较低的费用;能按时完成开发,及时交付使用。基本原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境。软件工程管理包括:软件管理学、软件工程经济学、软件心理学等内容。软件管理学包括人员组织、进度安排、质量保证、配置管理、项目计划等。

75软件工程原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。现代软件工程方法之所以得以实施,其重要的保证是软件开发工具和环境的保证。软件开发工具软件开发环境(全面支持软件开发全过程的软件工具的集合)3.2结构化分析方法软件开发方法是软件开发过程所遵循的方法和步骤,包括分析方法、设计方法和程序设计方法。结构化方法的核心和基础是结构化程序设计理论。需求分析阶段的工作:(1)需求获取:确定对目标系统的各方面需求(2)需求分析:确定给出系统的解决方案和目标系统的逻辑模型(3)编写需求规格说明书(4)需求评审需求分析方法有(1)结构化需求分析方法:(2)面向对象的分析的方法。结构化分析方法结构化分析方法的实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。结构化分析的常用工具(1)数据流图;(2)数据字典;(3)判定树;(4)判定表。数据流图:描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统功能建模。数据字典:对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。判定树:从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。判定表:与判定树相似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。数据字典是结构化分析的核心。软件需求规格说明书的特点:(1)正确性;(2)无岐义性;(3)完整性:(4)可验证性;(5)一致性;(6)可理解性;(7)可追踪性。3.3结构化设计方法软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,软件设计是确定系统的物理模型。软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的唯一途径。从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。结构设计:定义软件系统各主要部件之间的关系。

76数据设计:将分析时创建的模型转化为数据结构的定义。接口设计:描述软件内部、软件和协作系统之间以及软件与人之间如何通信。过程设计:把系统结构部件转换成软件的过程描述。从工程管理角度来看:概要设计和详细设计。软件设计的一般过程:软件设计是一个迭代的过程;先进行高层次的结构设计;后进行低层次的过程设计;穿插进行数据设计和接口设计。软件设计的基本原理:(1)抽象(2)模块化(3)信息屏蔽(4)模块独立性衡量软件模块独立性使用耦合性和内聚性两个定性的度量标准。在程序结构中各模块的内聚性越强,则耦合性越弱。优秀软件应高内聚,低耦合。软件概要设计的基本任务是:(1)设计软件系统结构;(2)数据结构及数据库设计:(3)编写概要设计文档;(4)概要设计文档评审。常用的软件结构设计工具是程序结构图(SC),使用它描述软件系统的层次和结构关系。模块用一个矩形表示,箭头表示模块间的调用关系。在结构图中还可以用带注释的箭头表示模块调用过程中来回传递的信息。还可用带实心圆的箭头表示传递的是控制信息,带空心圆的箭心表示传递的是数据。结构图的基本形式:基本形式、顺序形式、重复形式、选择形式。结构图有四种模块类型:传入模块、传出模块、变换模块和协调模块。面向数据流的设计方法在需求分析阶段,主要分析信息在系统中加工和流动的情况。面向数据流的设计方法定义一些映射方法,把数据流图变换成结构图表示的软件结构。典型的数据流类型有两种:变换型和事务型。变换型系统结构图由输入、中心变换、输出三部分组成。事务型数据流的特点是:接受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。详细设计详细设计是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节。常见的过程设计工具有:图形工具:程序流程图、N-S(方框图)、PAD(问题分析图)、HIPO表格工具:判定表语言工具:PDL3.4软件测试软件测试是保证软件质量的重要手段,其主要过程涵盖了整个软件生命周期的过程,包括需求定义阶段的需求测试、编码阶段的单元测试、集成测试以及后期的确认测试、系统测试。软件测试定义:使用人工或白动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。软件测试的目的:发现错误而执行程序的过程。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。

77一个成功的测试是发现了至今尚未发现的错误的测试。测试要以查找错误为中心,测试只能证明程序中有错误,不能证明程序中没有错误。软件测试方法从是否需要执行被测软件的角度,分为静态测试和动态测试。按照功能划分可以分为白盒测试和黑盒测试。(1)静态测试和动态测试静态测试包括代码检查、静态结构分析、代码质量度量。不实际运行软件,主要通过人工进行。动态测试:是基本计算机的测试,是为了发现错误而执行程序的过程。(利用测试用例去运行程序,以发现程序错误的过程)测试用例是为测试设计的数据。动态测试主要包括白盒测试方法和黑盒测试方法。白盒测试也称结构测试,根据软件产品的内部工作过程,检查内部成分,以确认每种内部操作符合设计规格要求。白盒测试:在程序内部进行,主要用于完成软件内部操作的验证。主要方法有逻辑覆盖、基本路径测试。黑盒测试也称功能测试,是对软件一经实现的功能是否满足需求进行测试和验证。(不考虑内部的逻辑结构和内部特性,只依据程序的需求和功能规格说明,检查程序的功能是否满足功能说明)黑盒测试是在软件接口处进行,完成功能验证。黑盒测试:主要诊断功能不对或遗漏、界面错误、数据结构或外部数据库访问错误、性能错误、初始化和终止条件错,主要用于软件确认测试。主要方法有等价类划分法、边界值分析法、错误推测法等。软件测试过程一般按4个步骤进行:单元测试、集成测试、验收测试(确认测试)和系统测试。3.5程序的调试注意程序测试与调试的区别:测试是尽可能多地发现软件中的错误,软件测试贯穿整个软件生命期调试是诊断和改正程序中的错误,主要在开发阶段进行程序调试的基本步骤:(1)错误定位;(2)修改设计和代码,以排除错误:(3)进行回归测试,防止引进新的错误。软件调试可分为静态调试和动态调试。静态调试主要是指通过人的思维来分析源程序代码和排错,是主要的设计手段,而动态调试是辅助静态调试。主要调试方法有:(1)强行排错法;(设置断点、程序暂停、监视表达式等)(2)回溯法;(3)原因排除法。第四章数据库设计基础4.1数据库系统的基本概念数据:实际上就是描述事物的符号记录。数据的特点:有一定的结构,有型与值之分,如整型、实型、字符型等。而数据的值给出了符合定型的值,如整型值15„数据库:是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序共享。数据库存放数据是按数据所提供的数据模式存放的,具有集成与共享的特点。数据库管理系统:一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等,

78是数据库的核心。数据库管理系统功能:(1)数据模式定义:即为数据库构建其数据框架;(2)数据存取的物理构建:为数据模式的物理存取与构建提供有效的存取方法与手段;(3)数据操纵:为用户使用数据库的数据提供方便,如查询、插入、修改、删除等以及简单的算术运算及统计;(4)数据的完整性、安生性定义与检查;(5)数据库的并发控制与故障恢复:(6)数据的服务:如拷贝、转存、重组、性能监测、分析等。为完成以上六个功能,数据库管理系统提供以下的数据语言:(1)数据定义语言(DDL):负责数据的模式定义与数据的物理存取构建;(2)数据操纵语言(DML):负责数据的操纵,如查询与增、删、改等;(3)数据控制语言(DCL):负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等。数据语言按其使用方式具有两种结构形式:交互式命令(又称自含型或自主型语言)宿主型语言(一般可嵌入某些宿主语言中)o目前流行的数据库管理系统都是关系数据库系统,如ORACLE、PowerBuider、SqlServer、VisualFoxpro和Access等。数据库管理员:对数据库进行规划、设计、维护、监视等的专业管理人员。数据库系统:由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)、软件平台(软件)五个部分构成的运行实体。数据库应用系统:由数据库系统、应用软件及应用界面三者组成。文件系统阶段:提供了简单的数据共享与数据管理能力,但是它无法提供完整的、统一的、管理和数据共享的能力。层次数据库与网状数据库系统阶段:为统一与共享数据提供了有力支撑。关系数据库系统阶段数据库系统的基本特点:数据的集成性、数据的高共享性与低冗余性、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。数据库系统的三级模式:(1)概念模式:数据库系统中全局数据逻辑结构的描述,全体用户公共数据视图;(2)外模式:也称子模式与用户模式。是用户的数据视图,也就是用户所见到的数据模式:(3)内模式:又称物理模式,它给出了数据库物理存储结构与物理存取方法。数据库系统的两级映射:(1)概念模式到内模式的映射;(2)外模式到概念模式的映射。3.2数据模型数据模型的概念:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。描述了数据结构、数据操作及数据约束。E-R模型的基本概念(1)实体:现实世界中的事物;(2)属性:事物的特性;(3)联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。E-R模型三个基本概念之间的联接关系:实体是概念世界中的基本单位,属性有属性域,每个实体可取属性域内的值。一个实体的所有属性值叫元组。E-R模型的图示法:(1)实体集表示法;(2)属性表法;(3)联系表示法。层次模型的基本结构是树形结构,具有以下特点:(1)每棵树有且仅有一个无双亲结点,称为根;(2)树中除根外所有结点有且仅有一个双亲。从图论上看,网状模型是一个不加任何条件限制的无向图。

79关系模型采用二维表来表示,简称表,由表框架及表的元组组成。一个二维表就是一个关系。在二维表中凡能唯一标识元组的最小属性称为键或码。从所有侯选健中选取一个作为用户使用的键称主键。表A中的某属性是某表B的键,则称该属性集为A的外键或外码。关系中的数据约束:(1)实体完整性约束:约束关系的主键中属性值不能为空值;(2)参照完全性约束:是关系之间的基本约束;(3)用户定义的完整性约束:它反映了具体应用中数据的语义要求。3.3关系代数关系数据库系统的特点之一是它建立在数据理论的基础之上,有很多数据理论可以表示关系模型的数据操作,其中最为著名的是关系代数与关系演算。关系模型的基本运算:(1)插入(2)删除(3)修改(4)查询(包括投影、选择、笛卡尔积运算)4.4数据库设计与管理数据库设计是数据应用的核心。数据库设计的两种方法:(1)面向数据:以信息需求为主,兼顾处理需求;(2)面向过程:以处理需求为主,兼顾信息需求。数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。需求分析常用结构析方法和面向对象的方法。结构化分析(简称SA)方法用自顶向下、逐层分解的方式分析系统。用数据流图表达数据和处理过程的关系。对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。数据字典是各类数据描述的集合,包括5个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据存储、处理过程。数据库概念设计的目的是分析数据内在语义关系。设计的方法有两种(1)集中式模式设计法(适用于小型或并不复杂的单位或部门);(2)视图集成设计法。设计方法:E-R模型与视图集成。视图设计一般有三种设计次序:自顶向下、由底向上、由内向外。视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突。关系视图设计:关系视图的设计又称外模式设计。关系视图的主要作用:(1)提供数据逻辑独立性;(2)能适应用户对数据的不同需求;(3)有一定数据保密功能。数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理的存取路径,以提高数据库访问速度有效利用存储空间。一般RDBMS中留给用户参与物理设计的内容大致有索引设计、集成簇设计和分区设计。数据库管理的内容:(1)数据库的建立;(2)数据库的调整;(3)数据库的重组;(4)数据库安全性与完整性控制;(5)数据库的故障恢复:(6)数据库监控。

80第1章数据结构与算法1.了解算法的基本概念和一些常用的算法,学会计算算法的时间复杂度;2.掌握数据结构的基本概念,并了解数据的逻辑结构和存储结构,学会利用图形的方式表示数据结构;3.了解线性表的基本概念,并掌握线性表的顺序存储结构以及顺序存储的线性表的基本运算;4.了解栈和队列的基本概念,并掌握它们的基本运算;5.了解线性链表的基本概念,并掌握线性链表的基本运算,同时,了解循环链表的基本概念和基本操作;6.理解树的概念,尤其是二叉树的基本概念和相关性质,掌握二叉树的存储结构和遍历技术;7.掌握查找技术,学会利用顺序查找和二分查找在数列中查找指定的数据:8.学会利用相关的排序技术实现无序数列的排序操作。习题一、选择题1、算法的时间复杂度是指B)算法程序的长度A)执行算法程序所需要的时间C)算法执行过程中所需要的基本运算次数D)算法程序中的指令条数2、算法的空间复杂度是指A)算法程序的长度C)算法程序所占的存储空间3、下列叙述中正确的是A)线性表是线性结构C)线性链表是非线性结构4、数据的存储结构是指A)数据所占的存储空间量B)D)B)D)C)数据在计算机中的顺序存储方式5、下列关于队列的叙述中正确的是算法程序中的指令条数算法执行过程中所需要的存储空间栈与队列是非线性结构二又树是线性结构B)数据的逻辑结构在计算机中的表示D)存储在外存中的数据A)在队列中只能插入数据B)在队列中只能删除数据C)队列是先进先出的线性表D)队列是先进后出的线性表在栈中只能删除数据栈是先进后出的线性表6、下列关于栈的叙述中正确的是A)在栈中只能插入数据B)C)栈是先进先出的线性表D)7、设有下列二叉树:对此二叉树中序遍历的结果为A)ABCDEFB)DBEAFCC)ABDECFD)DEBFCA8、在深度为5的满二叉树中,叶子结点的个数为A)32B)31C)16D)159、对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为A)n+1B)nC)(n+l)/2D)n/210、设树T的度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1。则T中的叶子结点为A)8B)7C)6D)5二、填空题1、在长度为n的有序线性表中进行二分查找,需要的比较次数为.2,设一棵完全二叉树共有700个结点,则在该二叉树中有个叶子结点。

813、设一棵二叉树的中序遍历结果为DBEAFC前序遍历结果为ABDECF.则后序遍历结果为。4、在最坏情况下,冒泡排序的时间复杂度为»5、在一个容量为15的循环队列中,若头指针front=6,尾指针rear=9,则该循环队列中共有个元素。参考答案:-、选择题CDABCDBBBA二、填空题1、log2n2、3503、DEBFCA4、n(n-l)/25、3第2章(程序设计基础)1.了解程序设计的方法,以及程序设计风格确立的一些因素,掌握程序设计的基本规则;2.了解结构化程序设计的基本原则,掌握结构化程序设计的基本结构与特点;3.了解面向对象的程序设计方法,并理解面向对象方法的一些基本概念。习题:一、选择题1、结构化程序设计主要强调的是A)程序的规模B)程序的易读性C)程序的执行效率D)程序的可移植性2、对建立良好的程序设计风格,下面描述iE确的是A)程序应简单、清晰、可读性好B)符号名的命名只要符合语法C)充分考虑程序的执行效率D)程序的注释可有可无3、在面向对象方法中,一个对■象请求另一对象为其服务的方式是通过发送A)调用语句B)命令C)口令D)消息4、信息隐蔽的概念与下述哪-种概念直接相关?A)软件结构定义B)模块独立性C)模块类型划分D)模块耦合度5、下面对外j象概念描述错误的是A)任何对象都必须有继承性B)对象是属性和方法的封装体C)对象间的通讯靠消息传递D)操作是对象的动态属性二、填空题1、结构化程序设计的三种基本逻辑结构为顺序、选择和O2、源程序文档化要求程序应加注释。注释一般分为序言性注释和.3,在面向对象方法中,信息隐蔽是通过对象的来实现的。4、类是一个支持集成的抽象数据类型,而对象是类的o5、在面向对象方法中,类之间共享属性和操作的机制称为。参考答案:一、选择题:BADBA二、填空题:1、重复(或循环)2、功能性

823、封装4、实例5、继承第3章(软件工程基础)1.了解软件工程的基本概念;2.了解软件工程过程与软件的生命周期,以及软件工程的目标和原则;3.了解利用结构化分析法进行软件工程中的需求分析的方法,并了解需求分析的方法和需要完成的任务;4.了解数据流图的使用方法;5.了解如何利用结构化设计方法进行软件设计,并了解软件设计的一些常用用工具;6.了解软件测试的目的和方法,以及软件测试的准则,了解常用的软件测试方法的区别和各自的功能与特点;7.了解程序调试的方法和原则。习题:一、选择题1、在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是A)概要设计B)详细设计C)可行性分析D)需求分析2、下面不属于软件工程的3个要素的是A)工具B)过程C)方法D)环境3、检查软件产品是否合需求定义的过程称为A)确认测试B)集成测试C)验证测试D)验收测试4、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流合法图符的是A)控制流B)加工C)数据存储D)源和潭5、下面不属于软件设计原则的是A)抽象B)模块化C)自底向上D)信息隐蔽6、程序流图(PFD)中箭头代表的是A)数据流B)控制流C)调用关系D)组成关系7、下列工具中为需求分常用工具的是A)PADB)PFDC)N-SD)DFD8、在结构化方法中,软件功能分解属于下列软件开发中的阶段是A)详细设计B)需求分析C)总体设计D)编程调试9、软件调试的目的是A)发现错误B)改正错误C)改善软件的性能D)编程调试10、软件需求分析阶段的工作,可以分为四个方面:需求获取,需求分析,编写需求规格说明书,以及A)阶段性报告B)需求评审C)总结D)都不正确二、填空题1、软件是程序、数据和的集合。2、Jackson方法是一种面向的结构化方法。3、软件工程研究的内容主要包括:技术和软件工程管理。4、数据流图的类型有和事务型。5,软件开发环境是全面支持软件开发全过程的集合。参考答案:一、选择题:DDAACBDCBB二、填空题:1.文档

831.数据流2.软件开发3.变换型4.软件工具第4章(数据库设计基础)1.了解数据库系统的基本概念,以及数据库系统的发展;2.了解数据模型的基本概念,并对E-R模型、层次模型、网状模型和关系模型进行了解,并掌握关系模型的数据结构、关系的操作和数据约束等知识;3.了解关系模型的基本操作,掌握关系模型的基本运算及扩充运算;4.了解数据库的设计与管理,掌握数据库设计的几个阶段的方法和特点。习题:一、选择题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、按条件f对关系R进行选择,其关系代数表达式是A)R|X|RB)R|X|RC)of(R)D)nf(R)f7、关系数据库管理系统能实现的专门关系运算包括A)排序、索引、统计B)选择、投影、连接C)关联、更新、排序D)显示、打印、制表8、在关系数据库中,用来表示实体之间联系的是A)树结构B)网结构C)线性表D)二维表9、数据库设计包括两个方面的设计内容,它们是A)概念设计和逻辑设计B)模式设计和内模式设计C)内模式设计和物理设计D)结构特性设计和行为特性设计10、将E-R图转换到关系模式时,实体与联系都可以表示成A)属性B)关系C)键D)域二、填空题1、一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于的联系。2,数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构

84的应用程序不必修改,称为丁3、数据库系统中实现各种数据管理功能的核心软件称为。4、关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、一—和自定义完整性。5、在关系模型中,把数据看成一个二维表,每一个二维表称为一个.参考答案:一、选择题:AABBACBDAB二、填空题:1、一对多(或1:N)2、逻辑独立性3、数据库管理系统4,参照完整性5、关系

85一、选择题(1)下面叙述正确的是。(0A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.以上三种描述都不对(2)以下数据结构中不属于线性数据结构的是。(0A.队列B.线性表C.二叉树D.栈(3)在一棵二叉树上第5层的结点数最多是.(B)A.8B.16C.32D.15(4)下面描述中,符合结构化程序设计风格的是。(A)A.使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B.模块只有一个入口,可以有多个出口C.注重提高程序的执行效率D.不使用goto语句(5)下面概念中,不属于面向对象方法的是。(D)A.对象B.继承C.类D.过程调用(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是。(B)A.可行性分析B.需求分析C.详细设计D.程序编码(7)在软件开发中,下面任务不属于设计阶段的是o(D)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型⑻数据库系统的核心是.(B)A.数据模型B,数据库管理系统C.软件工具D.数据库(9)下列叙述中正确的是.(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是。(A)A.内模式B.外模式C.概念模式D.逻辑模式(11)算法的时间复杂度是指.(0A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数(12)下列叙述中正确的是.(A)A.线性表是线性结构B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构(13)设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为.(B)A.349B.350C.255D.351(14)结构化程序设计主要强调的是。(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性(15)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是.(D)A.概要设计B.详细设计C.可行性分析D.需求分析(16)数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数

86据流图合法图符的是o(A)A.控制流B.加工C.数据存储D.源和潭(17)软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及。(B)A.阶段性报告B.需求评审C.总结D.都不正确(18)下述关于数据库系统的叙述中正确的是.(A)A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的•致性是指数据类型的一致D.数据库系统比文件系统能管理更多的数据(19)关系表中的每一横行称为一个.(A)A.元组B.字段C.属性D.码(20)数据库设计包括两个方面的设计内容,它们是。(A)A.概念设计和逻辑设计B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计(21)算法的空间复杂度是指»(D)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间(22)下列关于栈的叙述中正确的是.(D)A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表(23)在深度为5的满二叉树中,结点的个数为.(B)A.32B.31C.16D.15(24)对建立良好的程序设计风格,下面描述正确的是o(A)A.程序应简单、清晰、可读性好B.符号名的命名要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无(25)下面对时象概念描述错误的是o(A)A.任何对象都必须有继承性B.对象是属性和方法的封装体C.对象间的通讯靠消息传递D.操作是对象的动态性属性(26)下面不属于软件工程的3个要素的是o(D)A.工具B.过程C.方法D.环境(27)程序流程图(PFD)中的箭头代表的是.(B)A.数据流B.控制流C.调用关系D.组成关系(28)在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是.(A)A.数据库系统B.文件系统C.人工管理D.数据项管理(29)用树形结构来表示实体之间联系的模型称为o(B)A.关系模型B.层次模型C.网状模型D.数据模型(30)关系数据库管理系统能实现的专门关系运算包括,(B)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表(31)算法一般都可以用哪几种控制结构组合而成。(D)A.循环、分支、递归B.顺序、循环、嵌套C.循环、递归、选择D.顺序、选择、循环

87(32)数据的存储结构是指。(B)A.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示C.数据在计算机中的顺序存储方式D.存储在外存中的数据(33)设有下列二叉树:对此二叉树中序遍历的结果为。(B)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA(34)在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送.(D)A.调用语句B.命令C.口令D.消息(35)检查软件产品是否符合需求定义的过程称为。(A)A.确认测试B.集成测试C.验证测试D.验收测试(36)下列工具中属于需求分析常用工具的是.(D)A.PADB.PFDC.N-SD.DFD(37)下面不属于软件设计原则的是.(C)A.抽象B.模块化C.自底向上D.信息隐蔽(38)索引属于.(B)A.模式B.内模式C.外模式D.概念模式(39)在关系数据库中,用来表示实体之间联系的是«(D)A.树结构B.网结构C.线性表D.二维表(40)将E-R图转换到关系模式时,实体与联系都可以表示成.(B)A.属性B.关系C.键D.域(41)在下列选项中,哪个不是一个算法一般应该具有的基本特征.(OA.确定性B.可行性C.无穷性D.拥有足够的情报(42)希尔排序法属于哪一种类型的排序法o(B)A.交换类排序法B.插入类排序法C.选择类排序法D.建堆排序法(43)下列关于队列的叙述中正确的是o(0A.在队列中只能插入数据B.在队列中只能删除数据C.队列是先进先出的线性表D.队列是先进后出的线性表(44)对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为.(B)A.N+lB.NC.(N+D/2D.N/2(45)信息隐蔽的概念与下述哪一种概念直接相关«(B)A.软件结构定义B.模块独立性C.模块类型划分D.模拟耦合度(46)面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是。(C)

88A.模拟现实世界中不同事物之间的联系B.强调模拟现实世界中的算法而不强调概念C.使用现实世界的概念抽象地思考问题从而自然地解决问题D.鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考(47)在结构化方法中,软件功能分解属于下列软件开发中的阶段是。(0A.详细设计B.需求分析C.总体设计D.编程调试(48)软件调试的目的是。(B)A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能(49)按条件f对关系R进行选择,其关系代数表达式为o(0A.R|X|RB.R|X|RfC.6f(R)D.Elf(R)(50)数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是。(D)A.自顶向下B.由底向上C.由内向外D.由整体到局部(51)在计算机中,算法是指»(0A.查询方法B.加工方法C.解题方案的准确而完整的描述D.排序方法(52)栈和队列的共同点是。(0A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素D.没有共同点(53)已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是。(A)A.cedbaB.acbedC.decabD.deabc(54)在下列几种排序方法中,要求内存量最大的是o(D)A.插入排序B.选择排序C.快速排序D.归并排序(55)在设计程序时,应采纳的原则之一是.(A)A.程序结构应有助于读者理解B.不限制goto语句的使用C.减少或取消注解行D.程序越短越好(56)下列不属于软件调试技术的是.(B)A.强行排错法B.集成测试法C.回溯法D.原因排除法(57)下列叙述中,不属于软件需求规格说明书的作用的是.(D)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析(58)在数据流图(DFD)中,带有名字的箭头表示。(0A.控制程序的执行顺序B.模块之间的调用关系C.数据的流向D.程序的组成成分(59)SQL语言又称为«(0A.结构化定义语言B.结构化控制语言C.结构化查询语言D.结构化操纵语言(60)视图设计一般有3种设计次序,下列不属于视图设计的是.(B)A.自顶向下B.由外向内C.由内向外D.自底向上(61)数据结构中,与所使用的计算机无关的是数据的o(0

89A.存储结构B.物理结构C.逻辑结构D.物理和存储结构(62)栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是一(D)

90全国计算机等级考试公共基础习题A.ABCEDB.DBCEAC.CDABED.DCBEA(63)线性表的顺序存储结构和线性表的链式存储结构分别是.(B)A.顺序存取的存储结构、顺序存取的存储结构B.随机存取的存储结构、顺序存取的存储结构C.随机存取的存储结构、随机存取的存储结构D.任意存取的存储结构、任意存取的存储结构(64)在单链表中,增加头结点的目的是。(A)A.方便运算的实现B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链表是线性表的链式存储实现(65)软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指.(B)A.模块间的关系B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程(66)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为,(B)A.PAD图B.N-S图C.结构图D.数据流图(67)数据处理的最小单位是»(0A.数据B.数据元素C.数据项D.数据结构(68)下列有关数据库的描述,正确的是.(0A.数据库是一个DBF文件B.数据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件(69)单个用户使用的数据视图的描述称为.(A)A.外模式B.概念模式C.内模式D.存储模式(70)需求分析阶段的任务是确定o(D)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能(71)算法分析的目的是.(D)A.找出数据结构的合理性B.找出算法中输入和输出之间的关系C.分析算法的易懂性和可靠性D.分析算法的效率以求改进(72)n个顶点的强连通图的边数至少有«(0A.n-1B.n(n-l)C.nD.n+1(73)已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是.(B)A.堆排序B.直接插入排序C.快速排序D.直接选择排序(74)用链表表示线性表的优点是。(A)A.便于插入和删除操作B.数据元素的物理顺序与逻辑顺序相同C.花费的存储空间较顺序存储少D.便于随机存取(75)下列不属于结构化分析的常用工具的是.(D)A.数据流图B.数据字典C.判定树D.PAD图(76)软件开发的结构化生命周期方法将软件生命周期划分成.(A)A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计(77)在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是。(0A.循环的集合B.地址的集合C.路径的集合D.目标的集合(78)在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有。(D)A.数据无冗余B.数据可共享C.专门的数据管理软件D.特定的数据模型

91(79)分布式数据库系统不具有的特点是。(犷-A.分布式B.数据冗余C.数据分布性和逻辑整体性D.位置透明性和复制透明性(80)下列说法中,不属于数据模型所描述的内容的是。(0A.数据结构B.数据操作C.数据查询D.数据约束二、填空题(1)算法的复杂度主要包括复杂度和空间复杂度。答:时间(2)数据的逻辑结构在计算机存储空间中的存放形式称为数据的o答:模式#逻辑模式#概念模式(3)若按功能划分,软件测试的方法通常分为白盒测试方法和测试方法。答:黑盒(4)如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体"工人"与实体"设备"之间存在联系。答:一对多或1:N或l:n(5)关系数据库管理系统能实现的专门关系运算包括选择、连接和。答:投影(6)在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、遍历和后序遍历。答:中序(7)结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、和限制使用goto语句。答:模块化(8)软件的调试方法主要有:强行排错法、和原因排除法。答:回溯法(9)数据库系统的三级模式分别为模式、内部级模式与外部级模式。答:概念或概念级(10)数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、和处理过程。答:数据存储(11)设一棵完全二叉树共有500个结点,则在该二叉树中有个叶子结点。答:250(12)在最坏情况下,冒泡排序的时间复杂度为o答:n(n-l)/2或0(n(n-l)/2)(13)面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个<,答:实体(14)软件的需求分析阶段的工作,可以概括为四个方面:、需求分析、编写需求规格说明书和需求评审。答:需求获取(15)是数据库应用的核心。答:数据库设计(16)数据结构包括数据的结构和数据的存储结构。答:逻辑(17)软件工程研究的内容主要包括:技术和软件工程管理。答:软件开发(18)与结构化需求分析方法相对应的是方法。答:结构化设计(19)关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、和自定义完整性。答:参照完整性(20)数据模型按不同的应用层次分为三种类型,它们是数据模型、逻辑数据模型和物理数据模型。

92答:概念(21)栈的基本运算有三种:入栈、退栈和.答:读栈顶元素或读出栈顶元素(22)在面向对象方法中,信息隐蔽是通过对象的性来实现的。答:封装(23)数据流的类型有和事务型。答:变换型(24)数据库系统中实现各种数据管理功能的核心软件称为o答:数据库管理系统或DBMS(25)关系模型的数据操纵即是建立在关系上的数据操纵,一般有、增加、删除和修改四种操作。答:查询(26)实现算法所需的存储单元多少和算法的工作量大小分别称为算法的o答:空间复杂度和时间复杂度(27)数据结构包括数据的逻辑结构、数据的以及对数据的操作运算。答:存储结构(28)一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的.答:可重用性(29)面向对象的模型中,最基本的概念是对象和。答:类(30)软件维护活动包括以下几类:改正性维护、适应性维护、维护和预防性维护。答:完善性(31)算法的基本特征是可行性、确定性、和拥有足够的情报。答:有穷性(32)顺序存储方法是把逻辑上相邻的结点存储在物理位置的存储单元中。答:相邻(33)Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向的设计方法。答:数据结构(34)数据库设计分为以下6个设计阶段:需求分析阶段、、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。答:概念设计阶段或数据库概念设计阶段(35)数据库保护分为:安全性控制、、并发性控制和数据的恢复。答:完整性控制(36)测试的口的是暴露错误,评价程序的可靠性;而的目的是发现错误的位置并改正错误。答:调试(37)在最坏情况下,堆排序需要比较的次数为o答:0(nlog2")(38)一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体"项目主管”与实体"项目”的联系属于—的联系。答:1对多或1:N(39)数据库管理系统常见的数据模型有层次模型、网状模型和三种。答:关系模型

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭