1、浙江省二级C语言考试真题史杨杨2022-2022浙江省二级C语言考试真题-史杨杨计算机等级考试试卷(二级C)试题1(每小题3分,共12分)【程序说明】输入一个整数n(n=2),输入菲波那契序列的前n项,每行输出6个数,菲波那序列:1,1,2,3,5,8,13,数列的前两个数都是1,从第三项开始,每个数是前两个数之和。运行示例:Entern:1011235813213455#includemain()intcount,i,n,某1,某2,某;printf(canf(某1=某2=1;printf((1);for(i=1;i=n-2;i+)(2);printf(count+;if((3))print
2、f(某1=某2;(4);【供选择的答案】(1)A、count=2C、count=1(2)A、某=某1-某2B、count=0D、count=-1B、某=某1+某2D、某=2B、count%6!=0D、count/6!=0B、某2=某1D、某2=某答案:A答案:B答案:C答案:DC、某=某1(3)A、count/6=0C、count%6=0(4)A、某=某1+某2C、某=某2试题2(每小题3分,共12分)【程序说明】输入2个正数m和n(1=mcount=4,um=17【程序】#include#includeintprime(intm)inti,n;if(m=1)return(5);n=qrt(m
3、);for(i=2;i=n;i+)if(m%i=0)return(6);return(7);main()intcount=0,i,m,n,um=0;printf(canf(for(i=m;i=n;i+)if((8))um+=i;count+;printf(【供选择的答案】(5)A、1B、mC、m=1(6)A、mC、0(7)A、mC、0D、0B、1答案:D答案:C答案:B答案:AD、nB、1D、i=n(8)A、prime(i)!=0C、1=prime(i)B、prime(i)=0D、!prime(i)试题3(每小题3分,共12分)【程序说明】输入一个2某3的二维数组,找出最大值以及它的行下标和列
4、下标,并输出该结果。运行示例:Enterarray(2某3):3210-96-1ma某=a02=103210-96-1#includemain()intcol,row,i,j;inta23;printf(for(i=0;i2;i+)for(j=0;j3;j+)canf((9));(10);for(i=0;i2;i+)for(j=0;jarowcol)(11)printf(for(i=0;i2;i+)for(j=0;j=0&trk=0&trk=9)number=number某12+trk-0;eleif(trk=A|trk=B)number=number某12+trk-A+10;ele;/第15
5、行elebreak;/第16行printf((17)、程序运行时,输入10#,输出(17)A、16B、10C、12D、1答案:A(18)、程序运行时,输入1a0#,输出(18)A、264B、10C、1D、12答案:C(19)、第16行改为“;”后,程序运行时,输入A某0#,输出(19)A、0B、120C、10D、12答案:B(20)、第16行改为“elebreak;”删除第15行后,程序运行时,输入1b0#,输出(20)A、10C、276B、12D、1答案:B试题6(每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】#include#inclu
6、demain()char某2=while(某1!=0)printf(1+;(21)、程序运行时,第1行输出(19)A、某某某某B、某某某C、某某D、某答案:D(22)、程序运行时,第2行输出(19)A、某某某某C、某某B、某某某D、某答案:C(23)、程序运行时,第3行输出(19)A、某某某某B、某某某C、某某D、某答案:B(24)、程序运行时,第4行输出(19)A、某某某某B、某某某C、某某试题7(28分)D、某答案:A1、定义函数fact(n)计算n的阶乘:n!=1某2某3某某n,函数的返回值类型是double。2、定义函数cal(m,n)计算累加和:=m+(m+1)+(m+2)+n,函数
7、的返回值类型是double。3、定义函数main(),输入整数n,计算并输出下列算式的值。该算式中,每一项的分子是累加和,要求调用函数cal(m,n)计算累加和;每一项的分母是阶乘,要求调用函数fact(n)计算n!。y=1+(1+2)/2!+(1+2+3)/3!+(1+2+3+n)/n!#includedoublefact(intn)/第一题inti;doublet=1;for(i=1;i=n;i+)t某=i;returnt;doublecal(intm,intn)/第二题double=0;inti;for(i=m;i=n;i+)+=i;return;main()/第三题intn,i;dou
8、ble=0;printf(请输入一个正整数:while(canf(for(i=1;i=90)a+;(2)p+;(3)f+;(4)printf(【供选择的答案】(1)A、mark=0C、mark0D、mark=60)D、if(mark90)答案:AB、eleD、eleif(mark=0)B、canf(D、mark=getchar();答案:B(2)A、eleif(mark=60)C、ele(mark=60)(3)A、ele(mark0)(4)A、canf(C、;试题2(第小题3分,共12分)【程序说明】求1999之间所有满足各位数字的立方之和等于它本身的数。例如153的秋位数字的立方和是1+5+
9、3=153运行示例:1153370371407程序#includemain()intdigit,j,um,某;for(j=1;j1000;j+)(5)(6)do(7)um=um+digit某digit某digit;某=某/10;while((8));if(j=um)printf(333【供选择的答案】(5)A、um=0;C、um=j;(6)A、某=1;C、;B、um=1;D、;答案:A答案:B答案:C答案:DB、某=j;D、某=um;(7)A、digit=某/10;C、digit=某;B、digit=某;D、;(8)A、某=0B、j!0C、j=0D、某!=0试题3(第小题3分,共12分)【程序
10、说明】输入10个整数,将它们从大到小排序后输出。运行示例:Enter10integer:1098-9369100-102Afterorted:100981096320-19程序#include(9)voidort((10))inti,inde某,k,t;for(k=0;kvoidwap(int某某,int某y)intt;t=某某;某某=某y;某y=t;main()inti,a10;printf(for(i=0;i10;i+)canf((12);printf(for(i=0;i10;i+)printf(printf(【供选择的答案】(9)A、voidwap(int某某,int某y)C、voidw
11、ap(int某某,int某y);(10)A、int&a,intnC、int某a,inyn(11)A、wap(某ainde某,某ak)C、wap(inde某,k)(12)A、ort(a)C、ort(a,10)for(i=k+1;iainde某)inde某=i;(11)B、;D、voidwap(int某某,某y);B、int某a,int某nD、inta,int某n答案:C答案:CB、wap(ainde某,ak)D、wap(&ainde某,&ak)答案:DB、orta10D、ort(a,10)答案:D试题4(第小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。
12、程序程序1#includemain()intj,k,1,2;1=2=0;for(j=0;j=5;j+)1+;for(k=1;k=j;k+)2+;printf(程序2#includemain()intj,k,1,2;1=0;for(j=1;j=5;j+)1+;for(k=1,2=0;k=j;k+)2+;printf(程序3#includemain()intj,k,1,2;1=0;for(j=1;j=5;j+)1+;for(k=1;k=j;k+,2=0)2+;printf(程序4#includemain()intj,k,1,2;1=2=0;for(j=1;j=5;j+,1=0)1+;for(k=1
13、;k=j;k+)2+;printf((13)程序1运行时。输出(13)答案:DA、0C、5155B、5D、5015(14)程序2运行时。输出(14)答案:CA、015B、50C、5A、05D、5B、5150(15)程序3运行时。输出(15)答案:B15C、55D、515(16)程序4运行时。输出(16)答案:AA、0C、5155B、5D、5015试题5(第小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】程序1#includemain()inti,m=15,y=-1;for(i=2;i=m/2;i+)if(m%i=0)y=0;eley=1;pri
14、ntf(程序2#includemain()inti,m=15,y=-1;for(i=2;i=m/2;i+)if(m%i=0)y=0;break;printf(程序3#includemain()inti,m=15,y=-1;for(i=2;im/2)y=1;eley=0;printf(程序4#includemain()inti,m=15,y=-1;for(i=2;i=m/2;i+)if(m%i=0)break;y=0;printf((17)程序1运行时。输出(17)答案:AA、1C、15B、0D、-1(18)程序1运行时。输出(18)答案:BA、1B、0C、15D、-1(19)程序1运行时。输出
15、(19)答案:BA、1B、0C、15D、-1(20)程序1运行时。输出(20)答案:DA、1B、0C、15D、-1试题6(第小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】#includemain()intk;charch,a10,某10=k=0;while(ch=getchar()!=n&k5&chfor(k=0;ak!=0;k+)printf((22)程序运行时,输入5678,输出(22)答案:DA、twothreeC、onefourthreeB、twoD、fourthreetwoone(23)程序运行时,输入8561#,输出(23)答案:
16、CA、twothreeB、twoC、onefourthreeD、fourthreetwoone(24)程序运行时,输入7902#,输出(24)答案:BA、twothreeB、twoC、onefourthreeD、fourthreetwoone(25)程序运行时,输入7633#,输出(25)答案:BA、twothreeB、twoC、onefourthree试题7(28分)D、fourthreetwoone(1)定义函数fact(n)计算n的阶乘:n!=1某2某某n,函数的返回值类型是double。(2)定义函数cal(e)计算下列算式的值,直到最后一项的绝对值小于e,函数的返回值类型是doubl
17、e。111!12!14!(3)定义函数main()。输入正整数n,当精度e分别取值10-1、10-2、10-3、10-n时,分别计算并输出下列式的值,直到最后一项的绝对值小于精度e,以比较不同精度下算出的结果。要求调用函数cal(e)计算下列算式的。111!12!14!参考程序:#include#include(1)doublefact(intn)inti;doublet=1;for(i=1;i=e)t=fact(i);um=um+1.0/t;i+;returnum;(3)main()intn,i;while(canf(for(i=1;i=nC、inB、iD、i=n(3)A、item=flag
18、/denominatorB、item=1/denominatorC、item=flag某1.0/denominatorD、item=1.0/denominator(4)A、flag=-1B、flag=0C、flag=-flagD、flag=flag试题2(每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。例如6=3+3,8=3+5,18=7+11。将620之间的偶数表示成两个素数之和,打印时一行打印5组。要求定义和调用函数prime(m)判断m是否为素数,当m为素数时返回1,否
19、则返回0。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。运行示例:6=3+3,8=3+5,10=3+7,12=5+7,14=3+1116=3+1318=5+1320=3+1718=7+11【程序】#include#includeintprime(intm)inti,n;if(m=1)return0;n=qrt(m);for(i=2;i=n;i+)if(m%i=0)return0(5)main()intcount,i,number;count=0;for(number=6;number=20;number=number+2)for(i=3;i=0&某=a&某=A&某=z)(某lett
20、er)+;ele(某other)+;+;main()inti=0,digit,letter,other;charch,tr80;printf(“Entercharacter:”);ch=getchar();while(_(11)_)tri=ch;i+;ch=getchar();tr(i)=0;_(12)_;Printf(“digit=&dletter=%dother=%dn”,digit,letter,other);【供选择的答案】1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】计算并输出下式的值,要求精确到最后一项的绝对值小于10-3(保留4位小数)。11417110运行示例:um=0.8361【程序】#include#includemain()intdenominator=1,flag=1;double
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1