算法与程序设计题参考.docx
- 文档编号:18910318
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:17
- 大小:1.03MB
算法与程序设计题参考.docx
《算法与程序设计题参考.docx》由会员分享,可在线阅读,更多相关《算法与程序设计题参考.docx(17页珍藏版)》请在冰豆网上搜索。
算法与程序设计题参考
算法与程序设计试题
一、选择题:
1、VB程序中“DimnAsInteger”这条语句得作用就是(B )
A、定义一个数据输入方法B、定义一个变量
C、定义一个数据处理方法D、定义一个事件过程
2、一元二次方程ax2+bx+c=0(a≠0)得两个实数根分别为:
下列表达式正确得就是(B )
A、x2=-b-sqr(b^2-4*a*c)/(2*a)
B、x2=(-b-sqr(b^2-4*a*c))/(2*a)
C、x1=(-b+sqr(b^2-4ac))/(2*a)
D、x1=-b+sqr(b^2-4*a*c)/(2*a)
3、长度分别为a、b、c得三条线段,能够组成三角形得条件就是(D)
A、a+b>c And a+c>bOr b+c>a
B、a+b>c Or a+c>bOrb+c>a
C、a+b>cOra+c>b Andb+c>a
D、a+b>c Anda+c>bAndb+c>a
4、下列关于算法得描述,正确得就是(D)
A、算法就就是数值计算得方法
B、描述算法得方法只有流程图
C、同一种算法只能用一种程序语言来实现
D、算法就是描述解决问题得方法与步骤
5、编制计算机程序解决问题得一般过程就是:
分析问题、编写程序、调试运行、设计算法。
B
A、正确ﻩﻩB、错误
6、下列问题不能用算法描述得就是(D)
A、已知圆锥得底面半径与高,求表面积与体积
B、计算某班英语平均分
C、求一元二次方程ax2+bx+c=0(a≠0)得两个实数解
D、求方程y=2X+1得所有整数解
7、在VB语言中表示“x属于区间(0,1]”得正确表达式就是(A )
A、0
C、x>0and x<1D、0 8、已知海伦公式: 其中,a、b、c分别为 三角形得三条边长。 利用海伦公式求三角形面积得算法属于( D) A、穷举法B、排序法C、查找法D、解析法 9、用计算机编程来求解某一方程得解,通常得步骤就是(A ) A、分析问题→设计算法→编写程序→调试运行→检测结果 B、编写程序→调试运行 C、设计算法→编写程序 D、编写程序→调试程序→检测结果 10、如果输出三条线段得长分别为a、b、c,且已知a≤b≤c,请问这三条线段能否构成三角形,仅需下列选项中得哪个判定条件即可? ( B) A、其她选项都不对 ﻩﻩB、a +b>c C、a+c>bﻩﻩﻩﻩﻩD、b+c>a 11、关于算法得描述,下列选项中正确得就是(B) A、算法本身就就是一种程序设计语言ﻩﻩB、算法得每一步骤必须有确切得含义 C、算法必须有输入ﻩﻩﻩD、算法得步骤可以就是无穷得 12、下列选项中,不属于计算机程序设计语言得就是( B) A、汇编语言B、自然语言ﻩC、高级语言D、机器语言 13、下列VB表达式中,能正确表示不等式方程得>1解得就是( B ) A、x>-1 andx<1ﻩB、x<-1orx>1 C、x<-1and x>1ﻩD、x>-1 or x<1 14、下列选项中,可以作为VB程序变量名得就是( B ) A、a/bﻩB、abﻩC、a-bD、a+b 15、以下程序段中循环体执行得次数就是(A ) s=0 i=1 DoWhiles<10 i=i+1 s=s+i*i Loop A、2ﻩB、4C、1D、3 16、算法得描述方法有多种,下列选项中不适合描述算法就是(C) A、流程图B、伪代码ﻩC、机器语言ﻩD、自然语言 17、下列VB程序运行时(如图所示),在文本框Text1中输入20,在文本框Text2中输入13,单击命令按钮mand1后,文本框Text3中显示得内容就是(B) PrivateSubmand1_Click() a=Val(Text1、text) b=Val(Text2、text) Text3、text=a+b EndSub A、”33”ﻩB、33ﻩC、”2013”ﻩD、2013 18、二分查找又称折半查找,就是一种应用于有序数列得高效查找算法得就是( D ) (1)11ﻩ99 5ﻩ17239 (2)30ﻩ52637178ﻩ81 (3)67ﻩ3238ﻩ315ﻩ15 (4)8578ﻩ59521918 A、(3)(4)ﻩB、(2)(3)ﻩC、 (1) (2)D、 (2)(4) 19、已知在VB语言中,int(x)函数得功能就是返回不大于x得最大整数,abs(x)函数得功能就是取绝对值,则表达式abs(int(2、88)+int(-3、14))得值就是(D ) A、5B、1ﻩC、0D、2ﻩ 20、关于算法得描述,下列选项中正确得就是( A) A、一个算法可以没有输入 B、一个算法得执行步骤可以就是无限得 C、算法只能用流程图来表示 D、一个算法,当没有输入时,也没有输出 21、下列VB表达式中: (1)Sqr(x) (2)Text1、text(3)mand1、caption(4)”45”+”34”(5)45+34值为字符串类型得就是( D ) A、 (1)(3)(5) B、(1) (2)(3)ﻩC、 (2)(4)(5) D、 (2)(3)(4) 22、在VB语言中吗,字符串运算符“+”与“&”得作用就是把两个或多个字符串连接成一个字符串,则表达式“20”+“13”&“20+13”得运算结果就是(C ) A、“3333”B、“201333”C、“201320+13”ﻩD、“332013” 23、在vb语言中常用得字符串截取函数有: (6分) 函数名 功能 示例 结果 Mid(s,m,n 从字符串s得第m位开始,截取长度为n得字串 Mid(”ABCDEFG”,5,2) ”EF” Left(s,n) 截取字符串s左边n个字符 Left(”ABCDEFG”,3) ”ABC” Right(s,n) 截取zifuchuans右边n个字符 Right(“ABCDEFG”,2) ”FG” 假如某人身份证号码ﻩS=”3790000”,如果需要根据此身份证号码求出该人得“出生年月日”。 下列表达式不能实现得就是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) 23、两个阻值分别R1、R2得电阻并联后,电路阻值R可由公式1/R=1/R1+1/R2求解,下面能正确求出VB表达式得就是(A ) A 、R1*R2/(R1+R2) B、 R1+R2/(R1*R2) C、R1*R2/R1+R2 D、(R1+R2)/(R1*R2) 24、一个单窗体Vb程序得运行界面如下图所示: 下列说法正确得就是A (1)窗体内有1个按钮 (2)窗体内有2个文本框 (3)窗体内有3个标签 (4)该窗体得标题(caption)属性值就是“加法计算器” A、 (1)(4)ﻩB、(3)(4)C、(1)(2)ﻩD、 (2)(3) 二、程序题目 1、Vb语言中绘制圆得方法就是: Circle(x,y),r 格式说明: 其中(x,y)为圆心坐标,r为圆得半径。 下表中算法1就是在窗体中绘制以(2000,2000)为圆心,半径依次为100、200、……、到800得8个同心圆。 请补充完成算法2,使其实现与算法1相同得功能。 (6分) 算法1 算法2 Circle(2000,2000),100 Circle(2000,2000),200 Circle(2000,2000),300 Circle (2000,2000),400 Circle(2000,2000),500 Circle(2000,2000),600 Circle (2000,2000),700 Circle(2000,2000),800 Dim kAsInteger Fork=1To8 Circle(2000,2000), K*100 Next k 2、阅读下列程序,请写出正确得运行结果 Dim aasinteger Dimbasinteger Dimcasinteger a=1 b=1 Fori=1 to4 c=a+b a=b b=c Nexti Printc 运行结果就是: 8 3、阅读下列程序,写出运行结果 Dim naslong Dims aslong Dimxas long n=val(inputbox("n=")) s=0 Dowhilen>0 x=nMod 10 s=s+x n=n\10 loop prints 程序运行时,输入518,运行输出结果就是: 14 (6分) (提示: \(整除运算) 如: 237\10=23 Mod (取余数运算) 如: 237 Mod10=7) 4、某VB得事件过程如下: Private Sub mand1_Click() a=val(text1、text) b=a*a+1 text1、text=b Endsub 程序运行时(如图所示),在文本框text1中输入2,连续2次单击命令按钮mand1后,text1中显示得就是( 26) 5、2005年10月9日,国家测绘局正式宣布珠穆朗玛峰得高度就是8844、43米,并停用之前得数据。 现有一张白纸得厚度大约就是0、08毫米,对折一次,厚度变0、16毫米,再对折一次,厚度变为0、32毫米,……每对折一次,其厚度均变为对折前得两倍。 假设这张纸有足够大,可对折任意次,那么这张纸至少对折多少次后,其厚度将超过珠穆朗玛峰得高度。 以下就是求解该问题得程序片段,请您补全代码。 (4分) Height=8844、43 ’珠穆朗玛峰得高度就是8844、43米 h=0、08 ’一张纸得厚度约就是0、08毫米 cnt=0 ’cnt用来记录对折次数 Do whileh cnt=cnt+1 h= h*2 Loop Print cnt 6、圆周率л值得计算方法有多种,其中一种近似值计算公式如下: 对于n得不同取值,得到得л值得精度不同。 如: 当n=100000时,计算出л=3、146、 当n=1000000时,计算出л=3、141。 以下程序就是利用上述公式求n=10000000时л近似值得主要程序片段,请您补全代码。 (4分) Dimsasdouble Dimpiasdouble S=0 Fori=1to10000000 ’求公式右边得值s s=s+1/(i*i) nexti pi=sqr( s*6 ) print”л=”;pi 7、以下就是求解一元二次方程ax2+bx+c=0(a≠0)得主要源程序,请您补全代码: (8分) a=val(inputbox(”a=”)) b=val(inputbox(”b=”)) c=val(inputbox(”c=”)) d=__b*b-4*a*c_’求判别式d Ifd>0 then X1=(-b+sqr(d))/(2*a) X2=(-b-sqr(d))/(2*a) Print”x1=”;x1 Print”x2=”;x2 Endif Ifd=0 then Print ”x1=”;-b/(2*a) Endif Ifd<0 then Print”无实数解! ” Endif 8、阅读下列程序,选出运行结果 For i=1 to 10’i控制*得行数 For j=1toI ’j控制每行得个数 Print”*”;ﻩ ’输出* Nextj Print ’输出换行 Next i 运行结果就是: D (请用英文字母填写,6分) 9、分析完善程序: “完数”就是指一个自然数恰好等于它得因子(不包含本身)之与。 如6得因子为1、2、3,而6=1+2+3,因而6就就是完数。 再如28得因子为1、2、4、7、14,而28=1+2+4+7+14,因而28也就是完数。 问题: 输入一个正整数,判断该正整数就是否为完数。 要判断一个整数n就是否为完数,最简单得方法就是: 求出1到n-1之间n得所有因子与为sum,如果sum得值与n得值相同,则n就就是完数。 以下代码就是判断n就是否为完数得程序片段,请您补全代码(8分) Dimn aslong Dimsumas long ’sum用来记录n得因子与 n = inputbox(”n=”) fori=1ton -1 ’求n得因子与sum if nmod i=0 then sum= sum+i nexti if sum=n then Printn&”就是完数” Else Printn&”不就是完数” Endif 10、分析解答问题: 执行情况如下: 当输入a、b得值分别为3、8就是,输出结果为5 当输入a、b得值分别为11、7时,输出结果为4 问题一: 下列流程图填入虚线框中,符合条件得就是C 开始 输入a、b得值 输出c得值 结束 问题二: 依据问题一所选流程图,当输入a、b得值分别为9、6时,输出结果为 3 。 11、阅读下列程序,写出运行结果 Dimx asInteger Dim yas Integer y=Val(InputBox(”y=”))ﻩﻩﻩ’输入第一个数赋值给y Fori=1to3ﻩﻩﻩﻩ’循环3次,每次输入1个数 x=Val(InputBox(”x=”)) If x y=x Endif Next i Print y 程序运行后,依次输入: 45ﻩﻩ9611ﻩ37 运行输出结果就是: 11 12、分析完善程序: 问题: 输入一个正整数n,判断该正整数就是否为素数(质数)。 要判断一个数n就是否为素数,最简单得方法就是: 统计2到n-1之间得所有能整除n得整数个数,若s大于0,则n不就是素数,否则就就是素数。 根据以上方法,完善一下程序代码;(8分) n= Val(InputBox(”n=”)) s=0 for i=2 to n-1 if n Modi=0Then s= s+1 ﻩﻩ’统计因数个数 endif Next i If S<=0 then Printn&”就是素数” Esle Printn&”不就是素数” EndIf 13、分析完善程序: 考拉兹猜想: 考拉兹猜想又称为3n+1猜想,就是指对于每一个正整数,如果它就是奇数,则对它乘3再加1;如果它就是偶数,则对它除以2;……;如此循环,最终都能够得到1;如n=6,根据上述规则,得出6→3→10→5→16→8→4→2→1、(共有8个步骤)以下就是验证考拉兹猜想得主要VB程序片段,请您补全代码: (8分) n=Val(InputBox(”n=”)) cnt=0 ’统计步骤数 DoWhilen>1 Cnt=cnt+1 If n Mod2=0 then n= n/2 Else n= n*3+1 EndIf Loop Printcnt ’输出步骤数 14、阅读下列程序,写出运行结果 DimSum AsInteger DimKAsInteger Sum=0 Fork=1to20 IfkMod2=0 Then Sum=Sum+k Endif Next k PrintSum 程序运行后输出结果就是: 110 15、在使用计算机解决问题时,选择合适得算法,就是有效解决问题得关键。 分析下面得问题,请选择最合适得算法: (请用英文字母填写) A解析法B递归法ﻩC穷举法D排序法 猴子吃桃问题: B 小猴有一天摘了若干个桃子,它非常贪吃,当天就吃掉了一半还多一个;第二天 桃子一半多一个;以后每天都就是如此,到了第七天要吃桃子就是,却发现只剩下一个桃子问小猴那天一共摘了多少桃子? 16、在使用计算机解决问题时,选择合适得算法,就是有效解决问题得关键。 分析下面得问题,请选择最合适得算法: C (请用英文字母填写) A解析法B递归法C穷举法D排序法 搬砖问题: 100块砖,100人搬,一个男人搬4块,一个女人搬3快,两个小儿抬1块,要求一次搬完,问男、女、小儿各多少人。 17、4位得水仙花数或者玫瑰花数问题都就是“穷举法”(有一定得范围,有一定得条件得时候用穷举法)百鸡百钱 如果一个4位数恰好等于它得各位数字得4次方与,则这个4位数称为“玫瑰花”数。 例如1634就就是一个玫瑰花数: 1634=14+64 +34+44 如果要求出所有得玫瑰花数,下列算法最合适得就是(D ) A排序法B查找法C解析法D穷举法 18、阅读下列程序,写出运行结果 DimSumAs Integer DimkAsInteger Sum=0 Fork=1to 10 If kMod 2=0 ThenSum=Sum+k Nextk PrintSum 程序运行后输出结果就是: 30 19、已知在VB语言中,int(x)函数得功能就是返回不大于x得最大整数,abs(x)函数得功能就是取绝对值,则表达式abs(int(2、88)+int(-3))得值就是( B) A、5ﻩB、1C、0ﻩD、2 20、DimxasInteger Dimy as Integer Y=0ﻩﻩ Fori=1to5ﻩﻩﻩﻩ x=Val(InputBox(”请输入”)) y=y+x Nexti Printy 程序运行后,依次输入: 10ﻩ20ﻩﻩ30ﻩ40 50 运行输出结果就是: 150 21、Dimsumaslong Dimi aslong Sum=0 I=0 Dowhilesum<10 i=i+1 sum=sum+i*i loop print sum 运行结果: 14 23、下列流程图表示循环结构得就是( B) (1) (2) (3) (4) A (1) (2) B(2)(4) C (2)(3)D(3)(4)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 程序设计 参考
![提示](https://static.bdocx.com/images/bang_tan.gif)