




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江省计算机二级考试复习题笔试部分2008-20102008年春浙江省高校计算机等级考试试卷(二级C)试题1(每小题3分,共12分)【程序说明】输入一个整数n(n=2),输入菲波那契序列的前n项,每行输出6个数,菲波那序列:1,1,2,3,5,8,13,数列的前两个数都是1,从第三项开始,每个数是前两个数之和。运行示例:Enter n:10 1 1 2 3 5 8 13 21 34 55#include main()int count,i,n,x1,x2,x;printf(Enter n:);scanf(%d,&n);x1=x2=1;printf(%6d%6d,x1,x2); (1) ;for(i=1;i=n-2;i+) (2) ; printf(%6d,x); count+; if( (3) )printf(n); x1=x2; (4) ;【供选择的答案】(1)A、count=2B、count=0C、count=1D、count=-1 答案:A(2) A、x=x1-x2B、x=x1+x2C、x=x1D、x=2答案:B(3) A、count/6=0B、count%6!=0C、count%6=0D、count/6!=0答案:C(4) A、x=x1+x2B、x2=x1C、x=x2D、x2=x答案:D试题2(每小题3分,共12分)【程序说明】输入2个正数m和n(1=mn=500),统计交输出m和n之间素数的个数以及这些素数的和,要求定义和调用函数prime(m)判断m是否为素数,当m为素数返回1,否则返回0。素数就是只能被1和自身整除的正整,1不是素,2是素数。运行示例:Enter m,n:1 10count=4,sum=17【程序】#include #include int prime(int m)int i,n;if(m=1)return (5) ;n=sqrt(m);for(i=2;i=n;i+) if(m%i=0)return (6) ; return (7) ;main()int count=0,i,m,n,sum=0; printf(Enter m,n:); scanf(%d%d,&m,&n); for(i=m;i=n;i+) if( (8) ) sum+=i; count+; printf(count=%d,sum=%dn,count,sum);【供选择的答案】(5)A、1B、mC、m=1D、0 答案:D(6) A、mB、1C、0D、n答案:C(7) A、mB、1C、0D、i=n答案:B(8) A、prime(i)!=0B、prime(i)=0C、1=prime(i)D、!prime(i)答案:A试题3(每小题3分,共12分)【程序说明】 输入一个2*3的二维数组,找出最大值以及它的行下标和列下标,并输出该结果。运行示例:Enter array(2*3):3 2 10 -9 6 -1max=a02=10 3 2 10 -9 6 -1#include main()int col,row,i,j; int a23; printf(Enter array(2*3):); for(i=0;i2;i+) for(j=0;j3;j+) scanf(%d, (9) ); (10) ; for(i=0;i2;i+) for(j=0;jarowcol) (11) printf(max=a%d%d=%dn,row,col,arowcol); for(i=0;i2;i+) for(j=0;j3;j+) printf(%4d,aij); (12) 【供选择的答案】(9)A、&aijB、&ajiC、aijD、aji 答案:A(10) A、row=col=2;B、row=col=0;C、arowcol=0;D、arowcol=-1;答案:B(11) A、row=j;col=i;B、arowcol=aij;C、row=i;col=j;D、arowcol=aji;答案:C(12) A、printf(“n”);B、printf(“n”);C、;D、printf(“n”);答案:D试题4(每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】#include main()int op1,op2,res; char opertor; scanf (%d,&op1); opertor=getchar(); while(opertor!=) scanf (%d,&op2); switch(opertor) case +:res=op1+op2;break; case -:res=op1-op2;break; case *:res=op1*op2;break; case /:res=op1/op2;break; default:res=0; op1=res; opertor=getchar(); printf(%dn,res);(13)程序运行时,输入2*3-2=,输出 (13) 。A、6B、2C、0D、4答案:D(14)、程序运行时,输入15+2/3=,输出 (14) 。A、16B、15C、6D、5答案:D(15)、程序运行时,输入1+2*10-10/2=,输出 (15) 。A、10B、16C、15D、25答案:A4、程序运行时,输入1+3*5/2-7=,输出 (16) 。A、3B、1C、-2D、-3答案:A试题5(每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】#include #define MAXLEN 80main()int k=0,number=0;char strMAXLEN;while(strk=getchar()!=#) k+;strk=0;for(k=0;strk!=0;k+) if(strk=0& strk=0& strk=9) number=number*12+strk-0; else if(strk=A|strk=B) number=number*12+strk-A+10; else ;/第15行 else break; /第16行 printf(%dn,number);(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行改为“else break;”删除第15行后,程序运行时,输入1b0#,输出 (20) 。A、10B、12C、276D、1答案:B试题6(每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】#include #include main() char *s2=*,*;while(*s1!=0)printf(%sn,s0+strlen(s1)-1);s1+;(21)、程序运行时,第1行输出 (19) 。A、*B、*C、*D、*答案:D(22)、程序运行时,第2行输出 (19) 。A、*B、*C、*D、*答案:C(23)、程序运行时,第3行输出 (19) 。A、*B、*C、*D、*答案:B(24)、程序运行时,第4行输出 (19) 。A、*B、*C、*D、*答案:A试题7(28分)1、定义函数fact(n)计算n的阶乘:n!=1*2*3*n,函数的返回值类型是double。2、定义函数cal(m,n)计算累加和:s=m+(m+1)+(m+2) +n,函数的返回值类型是double。3、定义函数main(),输入整数n,计算并输出下列算式的值。该算式中,每一项的分子是累加和,要求调用函数cal(m,n)计算累加和;每一项的分母是阶乘,要求调用函数fact(n)计算n!。y=1+(1+2)/2!+(1+2+3)/3!+(1+2+3+n)/n!#include double fact(int n)/第一题int i; double t=1; for(i=1;i=n;i+) t*=i; return t;double cal(int m,int n) /第二题double s=0; int i; for(i=m;i=n;i+) s+=i; return s;main()/第三题int n,i;double s=0; printf(请输入一个正整数:); while(scanf(%d,&n),n=0); for(i=1;i=n;i+) s+=cal(1,i)/fact(i); printf(%f,s);2008年秋浙江省高等学校计算机等级考试试卷(二级C)试题1(第小题3分,共12分)【程序说明】输入一批学生的成绩,遇到负数表示输入结束,要求统计并各等级成绩的学生个数。成绩等级分为三级,分别为A(90100)、P(6080)和F(059)。运行示例:Enter scores:88 71 68 70 59 81 91 0 60 77 83 -10A:1;P:8;F:2;程序#include main() int mark,a,p,f;a=p=f=0;printf(Enter scores:);scanf(%d,&mark);while( (1) ) if(mark=90) a+; (2) p+; (3) f+; (4) printf(A:%d;P:%d;F:%d;n,a,p,f);【供选择的答案】(1)A、mark=0B、mark0C、mark=0D、mark=60)B、if(mark=60)C、else (mark=60)D、if(mark90)答案:A(3)A、else (mark0)D、else if(mark=0)(4)A、scanf(%d,mark);B、scanf(%d,&mark);C、;D、mark=getchar();答案:B试题2(第小题3分,共12分)【程序说明】求1999之间所有满足各位数字的立方之和等于它本身的数。例如153的秋位数字的立方和是13+53+33=153运行示例:1 153 370 371 407程序#include main() int digit,j,sum,x;for(j=1;j1000;j+) (5) (6) do (7) sum=sum+digit*digit*digit;x=x/10;while( (8) );if(j=sum)printf(%d ,sum);【供选择的答案】(5)A、sum=0;B、sum=1;C、sum=j;D、;答案:A(6)A、x=1;B、x=j;C、;D、x=sum;答案:B(7)A、digit=x/10;B、digit=x;C、digit=x%10;D、;答案:C(8)A、x=0B、j!0C、j=0D、x!=0答案:D试题3(第小题3分,共12分)【程序说明】输入10个整数,将它们从大到小排序后输出。运行示例:Enter 10 integers:10 98 -9 3 6 9 100 -1 0 2After sorted:100 98 10 9 6 3 2 0 -1 9程序#include (9) void sort( (10) )int i,index,k,t;for(k=0;kn-1;k+)index=k;for(i=k+1;iaindex)index=i; (11) void swap(int *x,int *y)int t;t=*x;*x=*y;*y=t;main() int i,a10;printf(Enter 10 integers:);for(i=0;i10;i+)scanf(%d,&ai); (12) ;printf(After sorted:);for(i=0;i10;i+) printf(%d ,ai);printf(n);【供选择的答案】(9)A、void swap(int *x,int *y)B、;C、void swap(int *x,int *y);D、void swap(int *x, *y);答案:C(10)A、int &a,int nB、int *a,int *nC、int *a,iny nD、int a,int *n答案:C(11)A、swap(*aindex,*ak)B、swap(aindex,ak)C、swap(index,k)D、swap(&aindex,&ak)答案:D(12)A、sort(a)B、sorta10C、sort(a,10)D、sort(a,10)答案:D试题4(第小题3分,共12分) 阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。程序程序1#include main() int j,k,s1,s2;s1=s2=0;for(j=0;j=5;j+) s1+;for(k=1;k=j;k+) s2+;printf(%d %d,s1,s2);程序2#include main() int j,k,s1,s2;s1=0;for(j=1;j=5;j+) s1+;for(k=1,s2=0;k=j;k+) s2+;printf(%d %d,s1,s2);程序3#include main() int j,k,s1,s2;s1=0;for(j=1;j=5;j+) s1+;for(k=1;k=j;k+,s2=0) s2+;printf(%d %d,s1,s2);程序4#include main() int j,k,s1,s2;s1=s2=0;for(j=1;j=5;j+,s1=0) s1+;for(k=1;k=j;k+) s2+;printf(%d %d,s1,s2);(13)程序1运行时。输出 (13) 。答案:DA、015B、50C、55D、515(14)程序2运行时。输出 (14) 。答案:CA、015B、50C、55D、515(15)程序3运行时。输出 (15) 。答案:BA、015B、50C、55D、515(16)程序4运行时。输出 (16) 。答案:AA、015B、50C、55D、515试题5(第小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】程序1#include main() int i,m=15,y=-1;for(i=2;i=m/2;i+) if(m%i=0)y=0; else y=1; printf(%d,y);程序2#include main() int i,m=15,y=-1;for(i=2;i=m/2;i+)if(m%i=0)y=0;break; printf(%d,y);程序3#include main() int i,m=15,y=-1;for(i=2;im/2)y=1; else y=0; printf(%d,y);程序4#include main() int i,m=15,y=-1;for(i=2;i=m/2;i+)if(m%i=0)break;y=0; printf(%d,y);(17)程序1运行时。输出 (17) 。答案:AA、1B、0C、15D、-1(18)程序1运行时。输出 (18) 。答案:BA、1B、0C、15D、-1(19)程序1运行时。输出 (19) 。答案:BA、1B、0C、15D、-1(20)程序1运行时。输出 (20) 。答案:DA、1B、0C、15D、-1试题6(第小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】#include main() int k;char ch,a10,*s10=one,two,three,four;k=0;while(ch=getchar()!=n&k5&ch8)ak+=ch; ak=0; for(k=0;ak!=0;k+) printf(%s ,s9-ak-1);(22)程序运行时,输入5678,输出 (22) 。答案:DA、two threeB、twoC、one four threeD、four three two one(23)程序运行时,输入8561#,输出 (23) 。答案:CA、two threeB、twoC、one four threeD、four three two one(24)程序运行时,输入7902#,输出 (24) 。答案:BA、two threeB、twoC、one four threeD、four three two one(25)程序运行时,输入7633#,输出 (25) 。答案:BA、two threeB、twoC、one four threeD、four three two one试题7(28分)(1)定义函数fact(n)计算n的阶乘:n!=1*2*n,函数的返回值类型是double。(2)定义函数cal(e)计算下列算式的值,直到最后一项的绝对值小于e,函数的返回值类型是double。(3)定义函数main()。输入正整数n,当精度e分别取值10-1、10-2、10-3、10-n时,分别计算并输出下列式的值,直到最后一项的绝对值小于精度e,以比较不同精度下算出的结果。要求调用函数cal(e)计算下列算式的。参考程序:#include #include (1)double fact(int n)int i;double t=1; for(i=1;i=e) t=fact(i); sum=sum+1.0/t; i+; return sum;(3)main()int n,i; while(scanf(%d,&n),n=0); for(i=1;i=n;i+) printf(i=%d 1+1/2!+1/3!+=%fn,i,cal(pow(10,-i); 2009年春浙江省高等学校计算机等级考试试卷(二级C)说明:(1) 请将所有试题的答案填写在答卷上。其中试题一到试题六请在答卷上各小题正确选项的对应位置处填“”;(2) 请在答卷上填写学校名称、准考证号和姓名,并将你的准考证号的后五位填写在答卷右下角的指定位置内;(3) 考试时间为90分钟。试题1(每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】输入1个正整数n,计算下列算式的前n项之和。 S=1-1/3+1/5-1/7+运行示例:Enter n:2Sum=0.67【程序】#include main( ) int denominator , flag,i, n;double item,sum;printf(”Enter n:”);scanf(”%d”,&n);denominator = 1; (1) ; sum = 0 for(i = 1; (2) ; i+) (3) ; sum=sum +item; (4) ; Denominator= denominator+2;printf(”Sum=%.2fn”,sum);【供选择的答案】(1)A、flag=0 B、flag=-1C、flag=n D、flag=1 (2) A、i=n B、in D、i=n(3) A、item=flag/denominatorB、item=1 /denominatorC、item=flag*1.0/denominatorD、item=1.0/denominator(4) A、flag=-1 B、flag=0C、flag=-flag D、flag=flag 试题2(每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。例如6=3+3,8=3+5,18=7+11。将620之间的偶数表示成两个素数之和,打印时一行打印5组。要求定义和调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。运行示例:6=3+3,8=3+5,10=3+7,12=5+7,14=3+1116=3+13 18=5+13 20=3+17 18=7+11【程序】#include #include int prime(int m) int i, n; if(m = 1) return 0;n = sqrt(m); for(i = 2; i = n; i+) if(m % i = 0) return 0 (5) main()int count, i,number;count=0; for(number=6;number=20;number=number+2) for(i=3;i=number/2;i=i+2) if(_(6)_) printf(“%d=%d+%d”,number,i,number i); count+; if(_(7)_) printf(“n”); ( (8) ) 【供选择的答案】(5) A、; B、return 1;C、return 0; D、else return 1;(6) A、prime(i)!=0 | prime(number i)!=0 B、prime(i)!=0 & prime(number i)!=0 C、prime(i)=0 | prime(number i)=0 D、prime(i)=0 & prime(number i)=0(7) A、count % 5 =0 B、count % 5!=0 C、(count+1)%5=0 D、(count+1)%5!=0(8) A、break; B、else break; C、continue; D、;试题3(每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】输入一行字符,统计并输出其中数字字符、英文字母和其他字符的个数。要求定义并调用函数count(s, digit,letter,other)分类统计字符串s中数字字符、英文字母和其它字符的个数,函数形参s的类型是字符指针,形参digit,letter,other的类型是整形指针,函数类型是void。运行示例:Enter characters:f(x,y)=5x+2y-6Digit=3 letter=5 other=6【程序】#include void count (char *s, int * digit, int * letter, int * other) _(9)_ while(_(10)_) if (*s=0 & *s=a & *s=A & *s=z)(*letter)+;else (*other)+; s+; main() int i=0,digit,letter,other; char ch,str80; printf(“Enter characters:”); ch=getchar(); while (_(11)_) stri=ch; i+; ch=getchar(); str(i)=0; _(12)_; Printf(“digit=&d letter=%d other=%dn”, digit,letter,other);【供选择的答案】(9) A、int dight=0,letter=0,other=0;B、int *dight=0,*letter=0,*other=0; C、dight=letter=other=0;D、*dight=*letter=*other=0; (10) A、*s+ !=0B、*s+ !=n C、*s!=0 D、 *s !=n(11) A、ch !=0B、ch !=n C、ch =0D、ch =n(12)A、count(str,&digit,&letter,&other)B、count(&str,&digit,&letter,&other) C、count(*str, digit, letter,other) D、count(*str,*digit,*letter,*other)试题4(每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。【程序】#include main() int flag=0,i;int a7=8,9,7,9,8,9,7;for(i=0;i=0;i-)if(ai=8)break;flag=i;printf(“%dn”,flag);flag=0;for(i=0;i7;i+)if(ai=9)printf(“%d”,i);printf(“n”);flag=0;for(i=0;i7;i+)if(ai=7) flag=i;printf(“%dn, flag”);(13) 程序运行时,第1行输出 (13) 。 A、2B、0C、3 D、6(14) 程序运行时,第2行输出 (14) 。 A、4B、-1C、0 D、5(15) 程序运行时,第3行输出 (15) 。 A、2 4 6B、4C、1 3 5 D、6(16) 程序运行时,第4行输出 (16) 。 A、2 4 6 B、2C、1 3 5 D、6试题5(每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。【程序】int f1(int n) if(n=1) return 1 ;else return f1(n-1) + n;int f2(int n) switch(n)case 1:case 2:return 1;default: return f2(n-1) + f2(n-2);void f3(int n) printf(“%d”,n%10);if(n/10 !=0) f3(n/10);void f4(int n) if (n/10 !=0) f4(n/10); printf(“%d”, n%10); #includemain()printf(“%dn”,f1(4);printf(“%dn”,f2(4);f3(123);printf(“n”);f4(123);printf(“n”);(17) 程序运行时,第1行输出 (17) 。 A、10 B、24 C、6 D、1(18) 程序运行时,第2行输出 (18) 。 A、1 B、3 C、2 D、4(19) 程序运行时,第3行输出 (19) 。 A、123 B、3 C、321 D、1(20) 程序运行时,第4行输出 (20) 。 A、1 B、123 C、3 D、321试题6(每小题3分,共12分)#include struct num int a,b;void f(struct num s, int n)int index, j, k;struct num temp;for(k=0;k n-1;k+)index=k;for(j=k+1;jn;j+)if(sj.bsindex.b) index=j;temp=sindex;sindex=sk;sk=temp;main()int count, i, k, m, n, no;struct num s100,*p;scanf(“%d%d%d”, &n, &m, &k);for(i=0;in; i+)si.a=i+1;si.b=0;p=s;count = no =0;while(nob=0) count+;if(count=m)no+;p-b=no;count=0;p+;if(p=s + n)p=s;f(s,n);printf(“%d: %dn”, sk-1.b, sk-1.a); (21) 程序运行时,输入5 4 3,输出 (21) 。A、3: 5 B、2: 3 C、1: 2 D、4: 1 (22) 程序运行时,输入5 3 4,输出 (22) 。A、3: 5 B、1: 2 C、4: 3 D、4: 2(23) 程序运行时,输入7 5 2,输出 (23) 。A、1: 5 B、6: 1C、2: 3 D、2: 4 (24) 程序运行时,输入4 2 4#,输出 (24) 。A、3: 3 B、4: 2 C、2: 4 D、4: 1 试题7 (28分)(1) 定义函数fact(n)计算n的阶乘:n!=1*2*n,函数形参n的类型是int, 函数类型是double。(2) 定义函数cal(x, e)计算下列算式的值,直到最后一项的值小于e,函数形参x和e的类型都是double,函数类型是double。要求调用自定义函数fact(n)计算n的阶乘,调用库函数pow(x, n)计算x的n次幂。 S=x+x2/2!+x3/3!+x4/4!+(3) 定义函数main(),输入两个浮点数x和e,计算并输出下列算式的值,直到最到最后一项的值小于精度e。要求调用自定义函数cal(x,e)计算下列算式的值。 S=x+x2/2!+x3/3!+x4/4!+计算机等级考试参考答案(二级C)试题16 (每小题3分) D D C C B B A A D C B A A B C D A B C B (21)A (22)D (23)C (24)D试题7 (28分)#include #include double fact(int n) double p=1; int i; for(i=1;i=e); return s;v
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 酒店代金券营销方案
- 咨询追回欠款方案范文
- 下城区营销服务方案设计
- 产品有害物质应急预案方案
- 跨境童装市场2025年本土化营销策略研究报告
- 互联网企业私下股权转让与数据安全保护合同
- 智能家居企业股东股权买卖与智能家居生态链构建协议
- 离婚协议书中子女抚养费及探望权空白协议集
- 离婚协议中股票赠与合同不可撤销及交易规则
- 合租公寓租赁合同与租户责任承担协议
- 浙江省通用安装工程预算定额第八册
- 乡村振兴战略实施与美丽乡村建设课件
- 中频电疗法理疗(共60张PPT)精选
- 医学信息检索与利用智慧树知到答案章节测试2023年杭州医学院
- 黑底搭配大气企业宣传商业计划书商务通用PPT模板
- GB/T 17608-2006煤炭产品品种和等级划分
- 沪教五年级数学上册第一单元测试卷
- 地下停车库设计统一规定
- 综合实践课《绳结》教学设计
- 建筑装饰设计收费管理规定
- 电子课件-《市场营销》-A45-2298完整版教学课件全书电子讲义(最新)
评论
0/150
提交评论