2014山东省信息技术学考算法与程序设计试题答案附后参考_第1页
2014山东省信息技术学考算法与程序设计试题答案附后参考_第2页
2014山东省信息技术学考算法与程序设计试题答案附后参考_第3页
2014山东省信息技术学考算法与程序设计试题答案附后参考_第4页
2014山东省信息技术学考算法与程序设计试题答案附后参考_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、文档供参考,可复制、编制,期待您的好评与关注! 山东省学考算法与程序设计试题选择题1、下列VB表达式中:Sqr(x) Text1.text Command1.caption "45"+"34" 45+34值为字符串类型的是( )A B C D2、如果给出三条线段的长分别为a、b、c,且已知abc,要问这三条线段能否构成三角形,仅需下列选项中的哪个判定条件即可?( )A 其他选项都不对 B a+c>b C a+b>c D b+c>a3、VB程序中“Dim n As Integer”这条语句的作用是( )A 定义一个事件过程 B 定义一个数

2、据输入方法 C 定义一个变量 D 定义一个数据处理方法4、关于算法的描述,下列选项中正确的是( ) A 算法的每一步骤必须有确切的含义 B 算法必须有输入 C 算法的步骤可以是无穷的 D 算法本身就是一种程序设计语言5、关于算法的描述,正确的是( ) A同一种算法只能用一种程序语言实现B算法就是数值计算的方法C描述算法的方法只有流程图D算法是描述解决问题的方法和步骤6、算法的描述方法有多种,下列选项中不适合描述算法的是( ) A机器语言 B自然语言 C流程图 D伪代码7、长度分别为a、b、c的三条线段,能够组成三角形的条件是( )A a+b>c Or a+c>b Or b+c>

3、;a B a+b>c or a+c>b And b+c>aC a+b>c Or a+c>b And b+c>a D a+b>c And a+c>b And b+c>a8、已知海伦公式:S=,其中p=(a+b+c),a、b、c分别为三角形的三条边长。利用海伦公式求三角形面积的算法属于( ) A 排序法 B 解析法 C 穷举法 D 查找法9、以下程序段中循环体执行的次数是( ) s=0 i=0 Do While s<10 i=i+1 s=s+i*iLoop A 1 B 3 C 2 D 410、下列VB表达式中,能正确表达不等式方程|x|&

4、gt;1的解的是( ) A x>-1 and x<1 B x>-1 or x<1 C x<-1 and x>1 D x<-1 or x>111、一元二次方程ax2+bx+c=0(a0)的两个实数根分别为: x1= x2= 下列表达式正确的是( )A x2=-b-sqr(b2-4*a*c)/(2*a) B x1=(-b+sqr(b2-4ac)/(2*a)C x2=(-b-sqr(b2-4*a*c)/(2*a) D x1=-b+sqr(b2-4*a*c)/(2*a)12、关于算法的描述,下列选项中正确的是( )A、一个算法可以没有输入B、算法只能用流

5、程图表示C、一个算法,当没有输入时,也没有输出D、一个算法的执行步骤可以是无限的。13、如果一个4位数恰好等于它的各位数字的4次方和,则这个4位数成为“玫瑰花”数。例如1634就是一个玫瑰花数:1634=14+64+34+44。如果要求出所有的玫瑰花数,下列算法最合适的是( )A解析法 B排序法 C查找法 D穷举法14、一个单窗体VB程序的运行界面如右图所示。下列说法正确的是( )窗体内有1个按钮窗体内有2个文本框窗体内有3个标签该窗体的标题(Caption)属性值是“加法计算器”A B C D15、下列VB程序运行时(如图所示),在文本框Text1中输入20,在文本框Text2中输入13,单

6、击命令按钮Command1后,文本框Text3中显示的内容是( )Private Sub Command1_Click()a=Val(Text1.text)b=Val(Text2.text)Text3.text=a+bEnd SubA 33 B "33 " C "2013 " D 2013注意:把程序中的Val去掉,再执行程序,看结果是否发生改变。16、在VB语言中,字符串运算符“+”和“&”的作用是把两个或多个字符串连接成一个字符串。则表达式"20"+"13"&"20+13"的

7、运算结果是( )A"201320+13" B"201333" C"332013" D"3333"17、两个阻值为R1、R2的电阻并联后,电路阻值R可由公式求解,下面能正确求出R的VB表达式是( )A B C D 18、下列问题不能用算法描述的是( )A求一元二次方程ax2+bx+c=0(a0)的两个实数解B计算某班英语平均分C求方程y=2x+1的所有整数解D已知圆锥的底面半径和高,求表面积和体积19、已知在VB语言中,int(x)函数的功能是返回不大于x的最大整数,abs(x)函数的功能是返回x的绝对值,则表达式a

8、bs(int(2.88)+int(-3.14)的值是( ) A 0 B 2 C 1 D 520、在VB语言中表示“x属于区间(0,1”的正确表达式是( )A 0<x<=1 B x>0 and x<1 C 0<x and x<=1 D x>0 or x<=121、某VB的事件过程如下:Private Sub Command1_Click()a=Val(Text1.text)b=a*a+1Text1.text=bEnd Sub程序运行时(如图所示),在文本框Text1中输入2,连续两次单击命令按钮Command1后,Text1中显示( )A 2 B

9、677 C 26 D 522、下列流程图中能描述循环结构的是( )A B C D23、二分查找又称折半查找,是一种应用于有序数列的高效查找算法。下列数列中适合二分查找算法的是( )(1)11 99 5 17 2 39 (2)30 52 63 71 78 81(3)67 62 68 6 15 15 (4)85 78 59 53 19 18A、(3)(4) B、(2)(3) C、(1)(2) D、(2)(4)24、下列关于算法的描述错误的是( )A、算法必须在有限步骤内实现B、算法是解决某一类问题的方法和步骤C、算法可以使用自然语言、伪代码、流程图等多种不同的方法来描述D、一个有效的算法至少要有一

10、个或多个输入25、下列选项中,不属于计算机程序设计语言的是( )A、高级语言B、自然语言C、汇编语言D、机器语言26、下列程序段执行后,变量s的值是( )s=0For i=1 To 10 s=s+iNext iA、1 B、0 C、55 D、10选择题答案:1-5 BCCAD 6-10 ADBBD 11-15 CADBA 16-20 AACBC 21-25 CADDB 26 C分析题1、阅读下列程序,写出正确运行结果Dim n As LongDim s As LongDim x As Longn = Val(InputBox("n=")s = 0Do While n >

11、 0 x = n Mod 10 s = s + x n = n 10LoopPrint s程序运行时,输入518,运行输出结果是: 14 (6分)提示: 整除运算 如:23710=23 Mod 取余运算 如:237 mod 10=7分析:初始值第一步第二步第三步XX=n mod 100815SS=s+s00+80+8+10+8+1+5NN=n 1051851502、阅读下列程序,写出正确运行结果Dim sum As LongDim i As Longsum = 0i = 0Do While sum < 10 i = i + 1 sum = sum + i * i LoopPrint su

12、m运行结果是: 14 分析:初始值第一步第二步第三步ii =i+100+10+1+10+1+1+1Sumsum=sum+i * i00+120+12+220+12+22+32循环条件Sum<10满足条件1满足条件5满足条件14不满足条件,循环终止3、阅读下列程序,写出正确运行结果Dim sum As IntegerDim k As Integersum = 0For k = 1 To 10 If k Mod 2 = 0 Then sum = sum + kNext kPrint sum程序运行后输出结果: 30 分析:2 4 6 8 10 的和If k Mod 2 = 0 Then su

13、m = sum + k可写为 If k Mod 2 = 0 Then sum = sum + k End If4、分析完善程序考拉兹猜想:考拉兹猜想又称为3n+1猜想,指的是对于给定的每一个正整数,经过下列有限次变换后,最终都能变为1:如果它是偶数,则对它除以2;如果它是奇数,则对它乘3再加1;如此循环,直到得到1为止。例如 n=6 ,根据上述规则需要8次变换后得到1,变换过程:63105168421。以下是验证考拉兹猜想的主要VB程序片段,请你补全代码:(8分)Dim n As LongDim cnt As Long '变换次数cntn = Val(InputBox("n=

14、") '输入正整数ncnt = 0Do While n > 1 cnt = cnt + 1 '变换次数cnt累加 If n Mod 2 = 0 Then n = n/2 Else n = n*3+1 End IfLoop5、阅读下列程序,写出运行结果Dim x As IntegerDim y As Integery = 0For i = 1 To 5 x = Val(InputBox("请输入:") y = y + xNext iprint y程序运行后,依次输入:10 20 30 40 50 运行输出结果是: 150 分析:初始第1次第2次

15、第3次第4次第5次第6次i0123456x01020304050不满足条件,循环终止y 00+100+10+200+10+20+300+10+20+30+400+10+20+30+40+506、选择算法,解决问题在使用计算机解决问题时,选择合适的算法,是有效解决问题的关键。分析下面的问题,请选择最合适的算法:(填:解析法/穷举法/递归法/排序法,6分) 穷举法 搬砖问题:100块砖,100人搬,一个男人搬4块,一个女人搬3块,两个小孩抬1块,要求一次全搬完,问需男、女、小儿各多少人?7、选择算法,解决问题在使用计算机解决问题时,选择合适的算法,是有效解决问题的关键。分析下面的问题,请选择最合适

16、的算法:(填:解析法/穷举法/递归法/排序法,6分) 递归法 猴子吃桃问题:小猴有一天摘了若干个桃子,它非常贪吃,当天就吃掉了一半还多一个,第二天接着吃剩下的桃子一半多一个,以后每天都是如此,至了第七天要吃桃子时,却发现只剩下一个。问小猴那天一共摘了多少个桃子?8、阅读下列程序,选出运行结果For i = 1 To 10 'i控制*的行数 For j = 1 To i 'j控制每行*的个数 Print "*" ; '输出 * -注意末尾是分号 Next j Print '输出换行Next i运行结果是: D (填:A/B/C/D,6分)ABC

17、D9、分析完善程序“完数”是指一个自然数恰好等于它的因子(不包含本身)之和。如6的因子为1、2、3,而6=1+2+3,因而6就是完数。再如28的因子为1、2、4、7、14,而28=1+2+4+7+14,因而28也是完数。问题:输入一个正整数n,判断该正整数是否为完数。要判断一个整数n是否为完数,最简单的方法是:求出1到n-1之间的所有因子和为sum,如果sum的值和n的值相同,则n就是完数。以下代码是判断n是否为完数的程序片段,请你补全代码:(8分)Dim n As LongDim sum As Long 'sum用来记录n的因子和n = InputBox("n="

18、)For i = 1 To n - 1 '求n的因子和sum If n Mod i = 0 Then sum = sum+i Next iIf sum=n Then Print n & "是完数"Else Print n & "不是完数"End If10、分析完善程序以下是求解一元二次方程ax2+bx+c=0(a0)的主要VB程序片段。请你补全代码:(8分)a = Val(InputBox("a=")b = Val(InputBox("b=")c = Val(InputBox("c

19、=")d = b 2 - 4 * a * c '求判别式dIf d > 0 Then X1 = (-b + Sqr(d) / (2 * a) X2 = (-b - Sqr(d) / (2 * a) Print "x1=" X1 Print "x2=" X2End IfIf d=0 Then Print "x=" -b / (2 * a)End IfIf d < 0 Then Print "无实数解"End If11、分析解决问题VB语言中绘制圆的方法是:Circle(x,y),r格式说

20、明:其中(x,y)为圆心坐标,r为圆的半径。下表中算法1是在窗体中绘制以(2000,2000)为圆心,半径依次为100、200800的8个同心圆。请补充完成算法2,使其实现与算法1相同的功能。(6分)算法1算法2Circle(2000,2000),100Circle(2000,2000),200Circle(2000,2000),300Circle(2000,2000),400Circle(2000,2000),500Circle(2000,2000),600Circle(2000,2000),700Circle(2000,2000),800Dim k As IntegerFor k = 1

21、To 8 Circle (2000, 2000), k * 100 Next k12、分析完善程序问题:输入一个正整数n,判断该正整数是否为素数(质数)。要判断一个数n是否为素数,最简单的方法是:统计2到n-1之间的所有能整除n的整数个数s,若s大于0,则n不是素数,否则就是素数。根据以上方法,完善以下程序代码:(8分)n = Val(InputBox("n=")s = 0For i = 2 To n - 1 If n Mod i = 0 Then s = s + 1 '统计因数个数 End IfNext iIf s = 0 Then '-此处若写s<

22、=0也是正确的 Print n & "是素数"Else Print n & "不是素数"End If13、分析完善程序2005年10月9日,国家测绘局正式宣布珠穆朗玛峰的高度是8844.43米,并停用之前的数据。现有一张白纸的厚度大约是0.08毫米,对折一次,厚度变为0.16毫米,再对折一次,厚度变为0.32毫米,每对折一次,其百度均变为对折前的两倍。假设这张纸有足够大,可对折任意次,那么这张纸至少对折多少次后,其厚度将超过珠穆朗玛峰的高度。以下是求解该问题的程序片段,请你补全代码:(8分)Dim height As DoubleDim h As DoubleDim cnt As Longheight = 8844430 '-单位为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论