算法与程序设计会考真题.docx

上传人:scccc 文档编号:13868144 上传时间:2022-01-25 格式:DOCX 页数:8 大小:120.32KB
返回 下载 相关 举报
算法与程序设计会考真题.docx_第1页
第1页 / 共8页
算法与程序设计会考真题.docx_第2页
第2页 / 共8页
算法与程序设计会考真题.docx_第3页
第3页 / 共8页
算法与程序设计会考真题.docx_第4页
第4页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《算法与程序设计会考真题.docx》由会员分享,可在线阅读,更多相关《算法与程序设计会考真题.docx(8页珍藏版)》请在三一文库上搜索。

1、1,分析并完善程序:考拉兹猜想:又称为 3n+1猜想,指的是对于给定的每个正整数n,经过一系列的有限次变化后,最终都能变为了:如果它是偶数,则对它除以2,如果它是奇数,则对它乘3再加 1;如 此 循 环 , 直 到 得 到 位 为 止 。 例 如 : n=6, 根 据 上 述 需 要 8 次 变 换 后 得1,变换过程:6-3-10-5-16-8-4-2-1 。以下是验证考拉兹猜想的主要程序片段,请你补全代码,DimnAsLongDimcntASLong 变换次数 cntn=Val(InputBox( “n=”) 输入正整数ncnt=0Do While n1cnt=cnt+1变换次数累加If

2、nMod2=0 Thenn=_n/2_Elsen=_3*n+1_endifLoopPrint cnt输出变换次数2,输入一个正整数n,判断该正整数是否为素数(质数)。要判断一个数n 是否为素数,最简单的方法是,统计 2 到 n-1 之间的所有能整除n 的整数个数完善以下程序代码:N= val(InputBox( “ n=)”S=0For i=2 to n-1Ifnmodi=0ThenS=_s+1_ 统计因数个数EndifNext iIf_s=0_ThenPrint n & ”是素数“s,若s 大于0,则n 不是素数,否则是素数,根据以上方法,ElsePrint n & ”不是素数“End if

3、3,VB 语言中绘制圆的方法是:Circle(x,y),r格式说明:其中(x,y)为圆心坐标,r 为圆的半径。下表中算法心,半径依次为100,200,800 的 8 个同心圆。请补充完成算法分)1 是在窗体中绘制以(2,使其实现与算法2000, 2000)为圆1 相同的功能。 ( 6算法1算法2Cicle(2000,2000),100Dim k As IntegerCicle(2000,2000),200Fork= 1to8Cicle(2000,2000),300Cicle(2000,2000),_k*100_Cicle(2000,2000),400Next kCicle(2000,2000)

4、,500Cicle(2000,2000),600Cicle(2000,2000),700Cicle(2000,2000),8004,“完数”是指一个自然数恰好等于它的因子(不包含本身)的和,如6 的因子为1, 2, 3,而 6=1+2+3 ,因而 6 就是“完数” ,如 28=1+2+4+7+14问题:输入一个正整数n,判断该数是否为“完数”要判断一个整数N 是否为“完数” ,最简单的方法是:求出现 1 到 n-1 之间 n 的所有因子和为sum,如果 sum 的值和 n 的值相同, 则 n 就是完数。 以下代码是判断n 是否为完数的程序片段,请补全代码:Dim n as longDim su

5、m as long 量级 SUM 用来记录 N 的因子和N= inputBox( “n=”)For I = 1 to n-1求 N 的因子和 SUMIf nmod i = 0 thensum = _sum+i_Next IIf _sum=n_ thenPrintn & “是完数 ”ElsePrintn & ”不是完数 ”5,2005 年 10 月 9 日,国家测绘局正式宣布珠穆朗玛峰的高度是8848.43 米,并停用之前的数据,现有一长白纸的厚度大约是 0.08 毫米,对折一次,厚度变为0.16 毫米,每对折一次,厚度变为折前的两倍。假设这长纸足够大,可对折任意次,那么这张纸至少对折多少次后,

6、其厚度将超过珠穆朗玛峰的高度。以下是求解该问题的程序片段,请补全代码:Dim height as double定义珠穆朗玛峰的高度Dim h as double定义一张纸的厚度Dim cnt as long定义对折次数Height=8844430H=0.08Cnt=_0_Do while h0thenX1=(-b+sqrt(d)/(2*a)X2=(-b-sqrt(d)/(2*a)Print “x1=”;x1Print ”x2= ”;x2End ifIf _d=0_thenPrint “x= ”;-b/(2*a)EndifIf d0 thenPrint “无实数解! ”Endif7,选择算法解决

7、问题;在使用计算机解决问题时,选择合适的算法是有效解决问题的关键。分析下面的问题,请选择合适的算法:_穷举法 _(填:解析法 /穷举法 /递归法 /排序法,搬砖问题: 100 块砖, 100 人搬,一个男人搬4 块,一个女人搬3 块,两个小儿抬问需男、女、小儿各多少人。6 分 )1 块,要求一次全搬完,8,分析下面的问题,选择合适的算法(填:解析法/递归法/穷举法 /排序法)_递归法_猴子吃桃问题:小猴有一天摘了若干个桃子,它非常贪吃,当天就吃掉了一半还多一个,第二天接着剩下的一半多一个,以后每天都是如此,到了第七天要吃桃子时,却发现只剩下 1 个,问小猴子那天一共摘了多少个桃子。9,分析程序

8、,得出结果:Dim sum as longDimIas longSum=0I=0Do while sum0X=n mod 10S=s+xN=n10LoopPrint s程序运行时,输入518,运行输出结果是:_14_(6 分)(提示: ( 整除运算 )如: 23710=23;mod( 取余数运算 )如: 237 mod 10=7)11,分析程序,得出结果Dim sum as integerDim kas integerSum=0For k=1 to 10If k mod 2=0 then sum=sum+kNext kPrint sum程序运行后输出结果是:_30_12,分析程序,得出结果Di

9、m x as integerDim y as integerY=0For I =1 to 5X=val(inputbox( “请输入 ”)Y=y+xNext IPrint y程序运行后,依次输入:10203040运行输出的结果是:_150_(650分 )。13,程序段:for I =1 to 10for j=1 to Iprint “*”I控制 * 的行数J 控制每行 * 的个数输出 *next jprint输出换行next i运行结果是 _D_( 填: A/B/C/D)ABCD14,在 VB 语言中常用的字符串截取函数有:函数名功能示例结果Mid(s,m,n)从字符串 S 的第 M 位开始,

10、截取长度Mid( “ABCDEFG ”,5,2)“EF”为N的子串Left(s,n)截取字符串 S 左边 N 个字符Left( “ABCDEFG ”,3)“ABC ”Right(s,n)截取字符串 S 右边 N 个字符Right( “ABCDEFG ”,2)“FG”假如某人身份证号码s=”,如果需要根据此身份证号码求出该人的“出生年月日”列四个表达式中不能 实现的一个是 _D_.。下A.mid(s,7,8)B.right(left(s,14)8) C.mid(s,7,4)+mid(s,11,2)+mid(s,13,2) D.Left(s,14)-left(s,6)15,下图所示的算法流程图:(

11、6 分)执行情况如下:当输入a,b 的值为 3、 8 时,输出结果为5当输入a,b 的值为11、 7 时,输出结果为4开始输入 a,b 的值输出 c 的值结束问题一:下列流程图填入虚线框中,符合条件的是:_C_( 填: A/B/C)NNNababc=a-bc=b-ac=b-aYYYc=a-bc=a-bc=b-aBAC问题二:依据问题一所选流程图,当输入a,b 的值分别为9, 6 时,输出结果为_3_ 。部分选择题:1,下列选项中,可以作为VB 程序变量名的是(A 、 a+bB 、 a/bC、 a-bD、 ab2,下列程序执行后,变量s 的值是(B)D )S=0For I =1 to10S=s+

12、iNext iA、 1B、55C、10D、03,长度分别是a,b,c 的三条线段,能够组成三角形的条件是(A)A 、 a+bc and a+cb and b+caB 、 a+bc or a+cb or b+caC、 a+bc and a+cb or b+caD、 a+bc or a+cb and b+ca4,下列 VB 表达式中,能正确表示不等式方程解的是(B)A , x-1 and x1 or x-1 or x1 and xaB、 a+cbC、 a+bcD、其他选项都不对15,已知在VB 语言中, int(x) 函数的功能是返回不大于x 的最大整数, abs(x)函数的功能是返回x 的绝对值

13、,则表达式int(2.88)+abs(-3) 的值是(A)A 、 5B、 6C、 0D、 116,一元二次方程ax2+bx+c=0( a 0)的两个实数根分别为下列表达式正确的是(C )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)17,在 VB 语言中,字符串运算符“+”和“ & “的作用是把两个或多个字符串连接成一个字符串。则表达式“ 20”+“ 13” & “20+13”的运算结果是(D)A 、 ”3320

14、13”B 、 ”3333”C、 ”201333”D 、 ”201320+13 ”18,两个阻值分别为R1、 R2 的电阻并联后,电路阻值R 可由公式求解,下面能正确求出R 的VB 表达式是(D)。A 、 R1 +R2/(R1*R 2)B、R1*R 2 / R1+R 2C、 (R1+R2)/(R1*R 2)D、 R1*R 2/(R 1+R2)19,关于算法的描述,下列选项中正确的是(B)。A 、一个算法的执行步骤可是无限的B 、一个算法可以没有输入C、一个算法,当没有输入时,也没有输出D 、算法只能用流程图来表示20,下列问题不能用算法描述的是(A )。A 、求方程 y=2x+1 的所有整数解B

15、 、已知圆锥的底面半径和高,求表面积和体积C、计算某班英语平均分D 、求一元二次方程ax2+bx+c=0( a 0)的两个实数解21,在 VB 语言中表示“ X 属于区间( 0,1 ”的正确表达式是 ( C).A 、 x0 or x0 and x0 and x=1 D 、0x=122,下列流程图中能描述循环结构的是(D)。A、( 1)( 3)B 、(1)( 2)(4) C、( 2)( 3)( 4) D、( 2)( 4)23,一个单窗体VB程序的运行界面如图所示。下列说法正确的是( A )。( 1)窗体内有 1 个按钮( 2)窗体内有 2 个文本框( 3)窗体内有 3 个标签( 4)该窗体的标题( Caption)属性值是“加法计算器”A 、( 1)( 4)B、(2)( 3)C、( 3)( 4)D 、(1)( 2)24,某 VB 的事件过程如下:Private Sub Command1_Click()a=val(text1.text)b=a*a+1text1.text=bEndsub程序运行时(如图所示),在文本框text1 中输入 2,连续两次单击命令按钮Command1 后, text1中显示的内容是(C )。A 、 5B 、2C、 26D、677

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1