您好,欢迎访问三七文档
当前位置:首页 > 高等教育 > 习题/试题 > 2019算法与程序设计学考复习题(无答案)
1/20《算法与程序设计》专题复习第一套:一.选择题1.下列选项中,能作为VB程序变量名的是()A.3stuB.s1C.trueD.s+12.下列哪个程序段的运行结果如图1所示?()A.BB.AC.CD.D3.在VB中,int(x)函数的功能是返回不大于x的最大整数,设a=3,b=4,c=5,则下列表达式的运算结果中值最大的是()A.sqr(c)B.a^2+b^2-c^2C.abs(a-b)D.int(2*a-c/b)4.在VB中,用变量code存储学生的借阅卡编码(code=”NO20170502”),则变量code的数据类型应定义为()A.singleB.doubleC.stringD.integer5.VisualBasic程序设计语言属于()A.自然语言B.汇编语言C.机器语言D.高级语言6.阅读程序,写出运行结果DimiasintegerDimxasintegerDimyasintegerY=30Fori=1to3X=val(inputBox(“x=”))IfyxthenY=xEndifNextiPrinty程序运行后,依次输入:368751运行后输出的结果是:7.分析并完善程序GDP增长问题fori=1to5forj=1to6print“*”;nextjprintnextifori=1to5forI=1to6print“*”;nextiprintnextifori=1to5forj=1to6print“*”;nextjprintnextjforj=1to5forj=1to6print“*”;nextjprintnexti2/20某省2016年的GDP是6.7万亿元,如果每年按7%的比例增长,问多少年以后此省的GDP超过15万亿?【算法分析】假设n年后此省的GDP超过15万亿元,根据题意得出数学关系式?求最小的n。【参考程序】Dimpassingle‘p用于记录GDP的值Dimrassingle‘r用于记录GDP的年增长比例Dimnasinteger‘n用于统计年数P=6.7R=0.07N=0DowhileP=p*(1+r)N=n+1LoopPrintn_”年后,GDP的值超过15万亿元。”根据上述回答下列问题:(共6分,每空3分)1.本题采用的算法是(填写:解析法/枚举法/排序法/递归法)。2.写出程序中空白处表达式。8.算法设计与程序实现判断车牌的单双号【背景知识】为了保障空气质量,减少雾霾,某市决定当空气污染时,实行汽车单双号限行,违反规定的车辆将予以处罚。如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。(提示:(1)所有车牌号中都含有数字,并且车牌号的长度都是6;(2)以车牌中最后一位阿拉伯数字的奇、偶来决定单双号。请根据上述算法描述补全代码)DimnasintegerDimsasstring‘定义s为字符串类型DimxasstringS=inputbox(“s=”,s)‘将输入的车牌号赋值给sN=6X=mid(s,n,1)Dowhilex”0”orx”9”‘x不是数字字符,则取x的前一位①X=mid(s,n,1)LoopIf②thenPrint“双号”Else3/20Print“单号”Endif(提示:mid(s,m,n)的功能:从字符串s的第m位开始,截取长度为n的子串。例如:mid(“A8963C”,5,1)的返回值是“3”。)(1)输入:AD2367(2)输入:A8888A(3)输入:A8963C输出:单号输出:双号输出:单号【算法描述】自然语言流程图第1步:输入车牌号第2步:取车牌号的最后一位x;第3步:判断x是否为数字,如果是,转第4步;如果不是,则依次取得倒数第二、三……位判断,直到找到数字为止;第4步:判断x是奇数还是偶数,然后输出相应的结果。请完善上述程序:(共8分,每空4分)1.根据题意,程序中空白处①处应填2.根据题意,程序中空白处②处应填写(填写字母:A/B/C/D)A.val(x)\2=0B.val(x)mod2=1C.val(x)mod2=0D.val(x)mod20第二套:1.设a=2,b=5,在VB中,表达式abAndb3的值是()A.-1B.TrueC.FalseD.12.以下程序段运行后,x和st的值分别是()dimxasIntegerdimstasstringx=123+6784/20st=”123”+”678”A.801“123678”B.123678“801”C.801“801”D.123678“123678”3.用流程图表示条件“AB”是否成立,要用到以下哪个图形?()A.B.C.D.A.DB.AC.CD.B4.下列选项中,能作为VB程序变量名的是()。A.xyB.3abC.a*bD.dim5.以下程序段运行后,s的值是()。n=0s=0dowhiles=10n=n+3s=s+nloopA.0B.3C.18D.306.阅读程序,写出运行结果dima(10)asintegerdimIasintegera(1)=1a(2)=1fori=3to6a(i)=a(i-1)+a(i-2)nextiprinta(6)上述程序运行后,输出a(6)的值是7.分析并完善程序以下是计算s=1*2*3*……*10的程序代码,请补全程序。dimsaslongdimIasintegers=fori=1to10s=nextiprints8.算法设计与程序实现勾股数是指满足条件a^2+b^2=c^2的自然数,求出100以内满足ab的所有勾股数。【算法分析】a的取值范围【1,100】5/20b的取值范围【1,100】c的取值范围【1,100】【参考程序】dimaasintegerdimbasintegerdimcasintegerfora=1to100forb=1to100forc=1to100ifthenprinta;b;cendifnextcnextbnexta1.本题所采用的算法是(填写:解析法/枚举法/排序法/递归法)。2.程序代码中空白处应填写的条件是(填写:A/B/C/D)。A.abanda2+b2=c2B.abora2+b2=c2C.abanda^2+b^2=c^2D.abora^2+b^2=c^2第三套:1.以下程序段运行后,y的值是()。x=3ifx3theny=2*xelsey=3*x+1endifA.5B.26C.10D.252.某晚会的猜数字游戏中,有100张写有1——100之间整数的卡片,主持人随机抽取一张卡片,让大家竞猜。有一种方案是:第一次猜50,若提示低了,则第二次猜75,若提示还是低了,则第三次猜87,依次类推:若第一次猜50,提示高了,则第二次猜25,若提示还是高了,则第三次猜12,依次类推:……。这种每次缩小一半查找范围而达到迅速确定目标的算法称为()。A.二分查找法B.顺序查找法C.解析法D.排序法3.在平面直角坐标系中,设点A(x1,y1)、点B(x2,y2),则AB两点之间的距离为,该公式正确的VB表达式是()。A.sqr((x1-x2)2+(y1-y2)2)B.sqr((x1-x2)^2+(y1-y2)^2)6/20C.sqr[(x1-x2)^2+(y1-y2)^2]D.sqr[(x1-x2)2+(y1-y2)2]4.下列语句正确定义了一个单精度实型变量x的是()A.dimxassingleB.dimxasstringC.其他三项都不对D.dimxasinteger5.在vb中表示“x属于区间[a,b)”的正确表达式是()。A.a≤xandxbB.a=xandxbC.a=xbD.a=xorxb6.阅读程序,写出运行结果dimsasintegerdimiasintegers=0fori=1to10step4print“#”s=s+inextiprints上述程序运行后,输出“#”的个数是,输出s的值是。7.分析并完善程序dimaasintegerdimbasintegerdimrasintegera=98b=63r=amodbdowhiler0a=bb=rr=amodbloopprintb程序运行后,输出结果为:8.算法设计与程序实现换钱问题:要将一张100元的钞票,换成等值的5元、2元、1元一张的钞票共50张。其中一种换法如下:5元:3张,2元:38张,1元:9张求出所有的换钱方案。【算法设计】x表示5元的张数:1≤x≤20;y表示2元的张数:1≤y≤50;z表示1元的张数:1≤z≤100;【参考程序】dimxasintegerdimyasinteger7/20dimzasintegerforx=1to20fory=1to50forz=1to100ifthenprintx;y;zendifnextznextynextx根据上述回答下列问题:1.本题采用的算法是:(填:解析法/枚举法/排序法/递归法)2.程序代码中空白处应填写的条件是(填写字母:A/B/C/D)A.5x+2y+z=100orx+y+z=50B.5x+2y+z=100andx+y+z=50C.5*x+2*y+z=100orx+y+z=50D.5*x+2*y+z=100andx+y+z=50第四套:1.在VB中,下列属于字符串常量的是()。A.3.14B.”VisualBasic”C.cntD.20182.以下程序段运行后,整型变量s的值是()。s=1fori=1to10step3s=s*inextiprintsA.3640B.280C.28D.553.以下程序段运行后,整型变量max1,min1的值分别是()。a=3b=5max1=(a+b)/2+abs(a-b)/2min1=(a+b)/2-abs(a-b)/2A.5,5B.3,3C.5,3D.3,54.给定一个四位数的年份,判断它是否为闰年:四年一闰、百年不闰、四百年又闰。下列判断年份y是闰年的表达式正确的是()。A.ymod400=0B.ymod4=0orymod1000andymod400=0C.ymod4=0D..ymod4=0andymod1000orymod400=05.将图1数学表达式转换为VB表达式,下列选项正确的是()8/20A.BB.DC.CD.A6.阅读程序,写出运行结果执行流程图,当输入x的值为4时,输出y的值为2,则菱形判断框中的条件可能为:(填写字母:A/B/C/D)。A.x3B.x4C.x=4D.x=57.分析并完善程序:以下是计算s=1^2+2^2+3^2+……+100^2的程序代码,请补全程序。DimsaslongDimiasintegerS=0Fori=1to100S=s+Prints8.算法设计与程序实现十进制整数转换为二进制整数采用“除2取余”法算法描述:第1步:输入一个十进制正整数n;第2步:将n除以2,记录余数r;9/20第3步:将r追加到字符串s的左边(s用于记录转换后的二进制数,初值为空);第4步:将n除以2的商赋给n;第5步:若n为0,则转到第6步;若n不为0,转到第2步;第6步:输出s(即逆序输出每一次的余数)。【参考程序】DimsasstringDimnasintegerDimrasintegerS=””n=val(text1.text)Dowhilen0r=①s=r&sn=②looptext2.text=s1.上述算法描述采用的方法是:(填:自然语言/伪代码/流程图)。2.在参考程序①应填入(填写字母:A/B/C/D)。A.nmod2B.n\2C.2modnD.n/23.在参考程序②处应填入(填写字母:A/B/C/D)。A.nmod2B.n\2C.2modnD.n/2第五套:1.下列选项中,关于算法的描述正确的是()。A.算法就是一种高级程序设计语言B.算法可以有0个或多个输入,但只能有一个输出。C.算法只能用自然语言描述D.算法必须在有限步骤内实现。10/202.下列选项中,能作为VB程序变量名的是()。A.distB.whileC.a%cD.4A1233.以
本文标题:2019算法与程序设计学考复习题(无答案)
链接地址:https://www.777doc.com/doc-6509100 .html