




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、模块仿真测试卷(三)(建议用时:45分钟)一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)1关于算法的三种基本模式,下列说法正确的是()A一个算法只能包含一种基本模式B一个算法必须包含三种基本模式C一个算法最多可以包含其中两种基本模式D一个算法可以含有三种基本模式的任意组合D算法的执行流程是指算法中各个处理步骤的执行次序和模式,通常算法中含有顺序模式、选择模式、循环模式三种基本模式。通常这三种基本模式会被组合起来使用,以表达各种较复杂的算法。2某算法流程图如下图所示:执行该算法,当s的值为0时()Ak的值为10B程
2、序出错C语句“kk1”共被执行了2次D输出k的值D模拟程序运行步骤如下:s10,s0不成立,程序按顺序依次运行kk1和ssk,得到k1,s9;因为s9,s0不成立,程序继续按顺序依次运行k k1和ssk,得到k2,s7;因为s7,s0不成立,程序继续按顺序依次运行kk1和ssk,得到k3,s4;因为s4,s0不成立,程序继续按顺序依次运行kk1和ssk,得到k4,s0,然后输入k。当s0时,k的值为4,程序会输出k的值,不会出错,而根据前面分析,语句“kk1”被执行了4次,故选D。3枚举算法的使用范围是()A所有情况B答案无穷多的情况C答案的个数有限且可一一列举D答案个数唯一的情况C本题主要考
3、查学生对枚举算法思想的理解。枚举算法属于搜索策略,适用于能将所有可能情况列出并一一排查的情况,枚举算法的关键是要列举出所有可能的情况,不遗漏也不重复。4下列关于对象的描述中,错误的是()A对象的属性用于描述对象的状态B对象的属性与方法可以有多个C对象事件的发生会驱动该对象相应事件处理过程的执行D对象的属性值只能在属性窗口中设置D本题主要考学生对“对象”的认识和理解,在面向对象的程序设计语言中,对象(object)是客观存在的事物或概念。一个对象的状态是通过很多个不同属性(property)来描述,比如一个文本框内字体、颜色、文本框风格等。行为是指对属性进行操作和处理的方法(method)。在面
4、向对象的程序设计中,一个对象是由一组描述对象状态的数据和一组描述处理对象属性的方法的代码构成的。对象的属性定义既可以在属性窗口中直接设置,也可以在程序代码中通过程序实现。5下列VB表达式的值等于3的是()ASqr(2)1BAbs(1)2CAsc(1)2DLen(2)1D本题主要考查学生对基本函数的认识和理解。Sqr(2)是求2的算术平方根,abs(1)是求1的绝对值,asc(1)是求1的ASCII值,Len(2)是求字符串2的长度,由此得出答案为D。Len(2)1213。6有如下VB程序段:a12b54abba该程序段执行后,变量a、b的值分别是()A12、54 B54、12C12、12 D5
5、4、54D本题主要考查学生对赋值语句执行过程的认识和理解。这是一段顺序结构的VB程序,按照语句的顺序依次执行赋值语句,赋值语句将等式右边的值存入到左边的变量中。模拟程序执行结果,可知答案为D,而不是简单的变量值交换。7在VB窗体中有一个对象,该对象的属性窗口如图所示。下列说法中,不正确的是()AInterval为属性名B1800为属性值C该对象的名称为Timer1D根据“Timer1Timer”可判断窗体名为TimerD本题主要考查学生对VB属性窗口的认识。在VB属性窗口中,下拉按钮左边显示的是对象名(Timer1),右边显示其属于的类(Timer),下方分成左右两列,左边一列显示对象的属性名
6、,如当前选中的是“Interval”属性,右边为其对应的属性值。由此图可以看出Timer1.Interval0。8已知单调函数f(x)在0,1区间上存在一个x0,使f(x0)0。现用对分查找法搜索x0的值,开始搜索区间为0,1,若经过10次对分查找后还需继续搜索,则第11次搜索区间的长度为()A.B.C.D.D此题看上去似乎和数学密切相关,但其实只是考查了对分查找的概念理解。已知f(x)是单调函数,意味着f(x)已按大小 有序排列,根据对分查找的概念,开始搜索区间为0,1,经过1次对分查找后,第2次的搜索长度变为,经过2次对分查找后,第3次的搜索长度变为经过10次对分查找后,第11次的搜索长度
7、变为。9有如下的VB程序段:Dim a(1 To 5)As Integer,i As Integer,c As Integera(1)2:a(2)1:a(3)3:a(4)4:a(5)5c0For i3 To 5If a(i2)a(i1)a(i) Then cc1Next itext1.TextStr(c)该程序段运行后,文本框text1中显示的内容是()A1B2C3D4B本题考查了循环和一维数组。变量c的初始值为0,模拟循环程序运行步骤如下:当i3时,a(1)a(2)a(3)成立,所以c1;当i4时,a(2)a(3)a(4)也成立,所以c2;当i5时,a(3)a(4)a(5)不成立,循环结束。
8、最后在文本框输出结果c。10【加试题】某查找算法的部分VB代码如下:tFalsei0Do While i<7 And tFalseii1If a(i)Key Then tTrueLoopIf tFalse Then i0数组元素a(1)到a(7)的数据依次为“3,5,1,5,8,9,5”当变量key值为5时,运用该算法处理后,变量i的值是()A0B2C4D7B此题考查顺序查找的程序实现过程,根据程序判断何时退出循环。顺序查找是按照数组a下标从1到7顺序查找并比较,如果找到有符合条件的相等的数据,就退出循环。此题中a(2),a(4),a(7)均为5,但程序找到第一个相等的数据就结束了,所以
9、当算法处理后,变量i的值为2。11【加试题】通过ADO的Recordset对象实例aa打开了如下表所示的记录集:序号货名售价数量1B5笔记本6.51224B橡皮1.2503签字笔1.1454圆规5.325当前记录是第3条,要用Fields集合返回第3个字段的信息,正确的表示是()Aaa.Fields(0)Baa.Fields(1)Caa.Fields(”序号”)Daa.Fields(”售价”)D需要了解Fields集合的两种书写格式,指定字段名或者字段序号。题目要求返回第3个字段的信息,即“售价”字段的信息。而字段序号是从0开始编号,所以第3个字段应该是编号2,故A、B选项均错误。12【加试题
10、】小明在VB中定义了以下函数,功能是求a和b的最大公约数。Function gcd(a As Integer,b A s Integer)As IntegerDo While b>0ca Mod babbcLoopEnd Function调试中发现计算结果一直是0。经过仔细观察与分析,发现错误的原因是()A函数名有错B变量c没有定义C函数没有返回值Db>0应该改为b>0CA选项函数名的命名规则同变量名。VB中可以省略一些变量的定义,未定义的变量即为通用类型,即根据赋值变化数据类型,所以B选项局部变量c未定义,不影响程序运行。D选项把循环条件改成b>0反而会使Do Whi
11、heLoop循环进入死循环。所以正确答案是C。二、非选择题(本大题共5小题,其中第13小题4分,第14小题4分,第15小题5分,第16小题8分,第17小题5分,共26分)13某仓库物品代码格式为“XXXXXXXXXY”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。校验码由前面9个X计算得到,计算方法为:从左边开始,第1个数字乘以1加上第2个数字乘以2依此类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。小吴设计一个根据校验码校验物品代码的VB程序,功能如下:在文本框Text1中输入物品代码,单击“校验”按钮Command1,如果输入的校验码与计算所得的校验码一致
12、,就输出“校验通过”(如图甲所示),否则输出“校验不通过!”(如图乙所示)。甲乙实现上述功能的VB程序如下,加框处代码有错,请改正。Dim s As String用于存储输入的物品代码Dim t As StringDim i As Integer,j As IntegerDim sum As Integer用于存储计算校验码的累加和Dim checkold As Integer用于存储输入物品代码中的校验码YDim checknew As Integer用于存储按照前面9个数字X计算所得的新校验码Dim a(1 To 10) As IntegerPrivate Sub Command1Clic
13、k()从物品代码中取出9个数字X依次存储到a(1)到a(9)中,取出校验码Y存储到a(10)中s(1)j0For i1 To 13tMid(s,i,1)If (t>”0”) And(t<”9”) Thenjj1a(j)Val(t)End IfNext i计算新的校验码并和输入的校验码进行比较sum0For i1 To 9sumsum(2)Next ichecknewsum10(3)checkolda(10)If checkoldchecknew ThenLabel1.Caption”校验通过。”ElseLabel1.Caption”校验不通过!”End IfEnd Sub【解析】本
14、题考查学生的程序模拟能力,根据输入的数据模拟程序运行过程,分析程序功能,得到输出结果。通过文本框对象Text1输入数据后,第一次循环将字符串转换成数字类型并赋值给数组变量a。第二次循环根据题意计算校验码:第1个数字乘以1加上第2个数字乘以2最后两个校验码进行比对,一致则成功,否则校验失败。【答案】(1)text1.text(2)a(i)*i(3)sum mod 1014运行下列VB程序,在文本框Text1中输入15,界面如图所示。单击“开始”按钮Command1后,标签Label1中显示的内容是_(1)_,文本框Text2中显示的内容是_(2)_。Private Sub Command1Cli
15、ck()Const x”转换成八进制数为”Dim y As Integer用于存储输入的十进制自然数Dim s As String用于存储转换后的结果Dim r As IntegeryVal(Text1.Text)s”Do While y<>0采用除八取余法ry Mod 8sStr(r)syy8LoopLabel1.CaptionText1.TextxText2.TextsEnd Sub【解析】此题考查学生的程序模拟能力,根据输入的数据模拟程序运行过程,分析程序功能,得到输出结果。通过文本框对象Text1输入数据后,程序将它转换成数字类型并赋值给变量y,然后判断y是否为0,若为0,
16、则直接结束Do While循环;若不为0,则采用除8取余法,将10进制数15转换成8进制数(参考10进制转2进制的除2取余法),并将它以字符串类型变量s显示。循环结束后,标签Label1中显示从Text1中取的值字符型常量x的值,字符串类型的相加等同于字符串直接连接。所以标签Label1中显示的内容是“15转换成八进制数为”,而Text2中显示的是转换结果17。【答案】(1)15转换成八进制数为(2)1715若干个字符,终止符是“#”,计算输入的字符中“a”出现的次数。(包括大小写)Private Sub Command1Click()Dim s As StringDim i As Integ
17、er,n As IntegersText1.Texti1n0Do While_(1)_If Mid(s,i,1)”a”Then nn1_(2)_LoopLabel1.Caption”a的个数为”Str(n)End Sub为了使程序能正常运行,上述程序中空格处应填入(1)_;(2)_。【解析】(1)本题属于稍难题。由题干可知,本题求解字符串中”a”的出现次数,因此需要枚举字符串中的所有字符,并判断是否为字符”a”,显然使用枚举算法是最合适的。(2)观察代码可知考查的是枚举的范围的确定,用Do While语句实现,当字符不等于“#”的时候要继续枚举,故空格(1)为Mid(s,i,1)<>
18、;”#”,当检测完一个字符后,就要为枚举下一个做准备,改变循环变量i的值,即ii1。【答案】(1)Mid(s,i,1)<>”#”(2)ii116【加试题】郑均收集了某公司生猪生长各阶段的产肉比数据,他设计了如下Visual Basic程序进行数据处理。程序运行界面如图所示,左边列表框List1中显示生猪生长的各阶段编号及对应的产肉比,单击“排序”按钮Command1后,右边的列表框List2中显示按产肉比从高到低排序后的数据。所收集到的不同生长阶段编号和对应的产肉比数据已分别保存在数组a和数组b中。排序部分程序如下:Dim a(1 To 10) As String数组a用于存储阶段
19、编号Dim b(1 To 10) As Single数组b用于存储产肉比Private Sub Command1Click()Dim i As Integer,j As Integer,k As Integer,t As Single,s As StringFor i1 To 9kiFor ji1 To 10If_ Then kjNext jIf k<>i Thensa(i):a(i)a(k):a(k)stb(i):_:b(k)tEnd IfNext iFor i1 To 10List2.AddItem a(i)” ”Str(b(i)Next iEnd SubPrivate Sub
20、 Form_Load()此过程用于对数组a和数组b进行赋值,并显示在List1中,代码略End Sub(1)解决此问题采用的算法是_。(填“选择排序”或“冒泡排序”)(2)在程序和画线处填入适当的语句或表达式,将程序补充完整:程序中画线处应填入_。程序中画线处应填入_。【解析】此题主要考查学生对排序算法的理解和代码实现。10个数据需要排序,最多需要排9遍,所以i从1到9,题目要求按产肉比从高到低排序后,程序先假设第1个数字最大(ki),然后每一个数字和它比较,如果有某个数据比第1个数字大,就记录下它的位置k,然后剩下的数据再和b(k)比较,重复进行。一遍完成后,比较k是否等于1,相等就直接进行
21、第2遍排序,不相等就将b(k)和b(1)交换后再进行第2遍排序以此类推,直到9遍排序结束。这是典型的选择排序。处是比较b(k)和b(j),如果有一个数比假设最大的数据b(k)大,就记录下这个位置k(kj),处是交换b(i)和b(j)以保证b(k)里放的是排序范围内最大数。【答案】(1)选择排序(2)b(k)<b(j)或b(k)<b(j)b(i)b(k)17【加试题】编写VB程序,实现如下功能:在文本框Text1中输入一个整数,单击“查找删除”按钮Command1,采用对分查找法在数组A中删除该数(该数后面的数组元素都前移一位),并在标签Label2中显示删除后的结果(运行效果如图82所示);否则,在标签Label2中显示“该数没有找到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 旅游补充协议书
- 汽车工程原理与维修技术试题集解析
- 进口产品合作合同协议
- 清工劳务协议书
- 永大税务协议书
- 车辆转让协议和转让合同
- 轮值董事协议书范本
- 配电柜楼层使用协议合同
- 车辆运输协议合同书
- 转让定制衣柜合同协议
- 2025年度咖啡厅员工培训服务合同范本
- 2025年苏州工业园区服务外包职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 夏粮收购仓储培训
- 大学生心理健康教育知到智慧树章节测试课后答案2024年秋湖南中医药大学
- 中铜国际贸易集团有限公司招聘笔试冲刺题2025
- 商演服务合同
- 【MOOC】园林植物应用设计-北京林业大学 中国大学慕课MOOC答案
- 【MOOC】现场急救-常熟理工学院 中国大学慕课MOOC答案
- 上海市境内旅游合同 示范文本(2013版)
- 电路(2)知到智慧树章节测试课后答案2024年秋山东大学
- 钢构制品加工协议
评论
0/150
提交评论