浙江省计算机2级C语言历年题目_第1页
浙江省计算机2级C语言历年题目_第2页
浙江省计算机2级C语言历年题目_第3页
浙江省计算机2级C语言历年题目_第4页
浙江省计算机2级C语言历年题目_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

10计算机等级考试二级C历年试卷汇总2023年春浙江省高等学校计算机等级考试试卷(C)1~试题6,请在答卷上各小题正确选项的对应位置处填“√⑵请将你的准考证号的后五位填写在答卷右下角的指定位置内;90分钟;1〔312分〕阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。【程序说明】求1+2/3+3/5+4/7+5/920项之和。运行例如:

Aftersorted:10099873465410-9【程序】#include<stdio.h>voidmain(){ inti,j,t,a[10];printf(“Enter10integers:“);for(i=0;i<10;i++)scanf(“%d”,&a[i] for(i=1;i<10;i++)for( j=0; j<10-i ;j++)if( a=[j]<a[j+1] ){t=a[j];a[j]=a[j+1];a[j+1]=t;}printf(“Aftersorted:“);for(i=0;i<10;i++)printf(“%d“,a[i]);printf(“\n“);sum=11.239837【程序】#include<stdio.h>voidmain(){inti,b=1;doubles;

}【供选择的答案】(5)A、“%f“,a[i]C、“%s“,aA、j=0、j=i

B“%lf“&a[i],j=i-1 s=0;for(i=1;i<=20;i++){A、j>i 、j<9-iCj<10-i 、j>i-1s=s+ (_double)i/(double)b ;

(8)A、a[i-1]<a[i]

Ba[j+1]<a[j+2] b=b+2;} n“ ,}【供选择的答案】A、s=0 B、s=1C、s=-1 D、s=2A、i/b B、double(i)/double(b)C、i/2*i-1 D、(double)i/(double)b(3)A、; B、b=2*i–1;C、b=1.0*b; 、b=b+2;(4)A、“sum=%d\n“ 、“s=%c\n“C、“sum=%f\n“ 、“s=%s\n“2〔312分〕阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。【程序说明】10个整数,将它们从大到小排序后输出。运行例如:Enter10integers:14-9991008706534

、a[j]<a[j+1] 、a[i]<a[j]3〔312分〕阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。【程序说明】输入一个字符串和一个正整数m,将该字符串中的前m出后一个字符串。1:Enterastring:103+895=?Enteraninteger:6Thenewstringis103+892:Enterastring:103+895=?Enteraninteger:60Thenewstringis103+895=?3:Enterastring:103+895=?Enteraninteger:0Thenewstringis【程序】#include<stdio.h>#include< string.h voidmain(){ chars[80],t[80],i,m;printf(“Enterastring:“);gets(s);printf(“Enteraninteger:“);scanf(“%d“,&m);for(i=0;s[i]!=”\0”&&i<m ;i++) s[i]=t[i]; t[i]=”\0”printf(“Thenewstringis“);puts(t);}【供选择的答案】A、ctype.h B、math.h、stdio.h D、string.hB、s[i]!=”\0”B、s[i]!=”\0”&&i<mD、s[i]!=”\0”||i<m、s[i]!=”\0”(11)A、*s++=*t++B、t[i]=s[i]、*t++=*s++D、s[i]=t[i](12)A、t[i]=”\0”;B、;C、*++s=”\0”;D、*++t=”\0”;4〔312分〕阅读以下程序并答复以下问题,在每题供给的假设干可选答案中,选择一个正确答案。【程序】#include<stdio.h>voidmain(){ ints,x1,y1,z1,x2,y2,z2;printf(“Enter6integers:“);scanf(“%d%d%d%d%d%d“,&x1,&y1,&z1,&x2,&y2,&z2);s=f(x2,y2,z2)-f(x1,y1,z1);printf(“%d\n“,s);}f(intx,inty,intz){ intk,n;30,31,30,31,31,30,31,30,31,31,30,31,30,31},30,31,30,31,31,30,31,30,31}{0,31,28,31,{0,31,29,31,};n=(x%4==0&&x%100!=0||x%400==0);

202321202331,输出21202331,输出29 。21C、019813D、-11,输出 28 。C、0D、-11981A29 B、285〔312分〕阅读以下程序并答复以下问题,在每题供给的假设干可选答案中,选择一个正确答案。【程序】#include<stdio.h>voidmain(){inta=-1,b=1;voidf1(intx,inty),f2(int*x,int*y);voidf3(int*x,int*y),f4(intx,inty);f1(a,b);printf(“(%d,%d)\n“,a,b);a=-1,b=1;f2(&a,&b);printf(“(%d,%d)\n“,a,b);a=-1,b=1;f3(&a,&b);printf(“(%d,%d)\n“,a,b);a=-1,b=1;f4(a,b);printf(“(%d,%d)\n“,a,b);}voidf1(intx,inty){intt;t=x; x=y; y=t;}voidf2(int*x,int*y){intt;t=*x; *x=*y; *y=t;}voidf3(int*x,int*y){int*t;t=x; x=y; y=t;}voidf4(intx,inty){int*t=malloc(sizeof(t));*t=x; x=y; y=*t;}程序运行时,第1行输出 (17) 。for(k=1;k<y;k++)z=z+tab[n][k];returnz;

A(1,-1) 、(-1,1) 、(-1,-1)程序运行时,第2行输出 (18) 。

D、(1,1)}

(1,-1) 、(-1,1) 、(-1,-1)

D、(1,1)0000000000100

0,输出 0 。

(19)程序运行时,第3行输出 (19) 。A29 B、28 C、0 D、-1

A(1,-1) 、(-1,1) 、(-1,-1)

D、(1,1)(140

0,输出 -1 。

程序运行时,第4行输出 (20) 。A29 B、28 C、0 D、-1

A(1,-1) 、(-1,1) 、(-1,-1)

D、(1,1)6〔312分〕#include<stdio.h>structcard{char*face;char*suit;};voidfilldeck(structcard*wdeck,char*wface[],char*wsuit[]){inti;for(i=0;i<4;i++){wdeck[i].face=wface[i%2];wdeck[i].suit=wsuit[i/2];}}voiddeal(structcard*wdeck){inti;for(i=0;i<4;i++)printf(“(%2sof%-6s)\n“,wdeck[i].face,wdeck[i].suit);}voidmain{structcarddeck[4];char*face[]={“K“,“Q“};char*suit[]={“Heart“,“Club“};filldeck(deck,face,suit);deal(deck);

8(14分)编写程序,输入一个正整数n,求以下算式的值。要求定义和调用函数fact(kk函数返回值的类型是double。sn 1k!k1运行例如:Entern:5sum=1.71667}程序运行时,第1行输出 (21) 。A、(KofHeart) B(QofHeart)C、(KofClub) 、(QofClub)程序运行时,第2行输出 (22) 。A、(KofHeart) B(QofHeart)C、(KofClub) 、(QofClub)程序运行时,第3行输出 (23) 。A、(KofHeart) B(QofHeart)C、(KofClub) 、(QofClub)程序运行时,第3行输出 (24) 。A、(KofHeart) B(QofHeart)C、(KofClub) 、(QofClub)7(14分)0〔大于通过〔60~84〕和不及格〔60〕的学生人数。运行例如:Enterscores:88716870598191426677830>=85:260-84:7<6022023年秋浙江省高等学校计算机等级考试试卷(C)1~试题6,请在答卷上各小题正确选项的对应位置处填“√⑵请将你的准考证号的后五位填写在答卷右下角的指定位置内;90分钟;〔312〕说明:阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。[程序说明] 输入一行字符,统计并输出其中英文字母,数字和其他字符的个数。运行示列:Entercharacters:f(x,y)=3x+5y-10letter=5,digit=4,other=6[程序]#include<stdio.h>voidmain{ intdigit,i,letter,othe;

功能就返回numberreverse(1234554321。运行例如:Enteraninteger:-123Afterreversed:-321[程序]#include<stdio.h>voidmain{longin;longreverse(longnumber);printf(“Enteraninteger:”);scanf(“%ld”,&in);printf(“Afterreversed:%ld\n”, (5));}longreverse(longnumber){intflag; (6);_(1)

ch;

flag=number<0?–1:1;digit=letter=other=0;printf(“Entercharacters:”);

if((7)) number=-number;while(number!=0){while(

(2)

!=’\n’)

res= (8) ;if( (3) letter++;

number/=10;} (4) (ch>=’0’&&ch<=’9’)digit++;elseother++;ptintf(“letter=%d,digit=%d,other=%d\n”,letter,digit,other);}A.* B.float C.double D.charA.(ch=getchar) B.ch=gerchar()C.getchar(ch) D.putchar(ch)(3)A.(ch>=’a’&&ch<=’z’)&&(ch>=’A’&&ch<=’Z’)B.(ch>=’a’&&ch<=’z’)||(ch>=’A’&&ch<=’Z’)C.ch>=’a’&&ch<=’Z’D.ch>=’A’&&ch<=‘z’A.if B.else C.elseif D.ifelse试题二〔312〕说明:阅读下鲁程序说明程序,在每题供给的假设干可选择答案中,选一个正确答案。[程序说明]输入一个整数,将它逆序输出。要求定义并调用函数reverse(longnumber),,它的

returnflag*res;}A.reverse() B.inreverse(in) D.reverseA.res=0 B.longresC.longres=0 D.resA.number>0 B.number<0C.number!=0 D.number==0A.number%10 B.res*10+number%10C.number/10 D.res*10+number/10试题三〔312〕说明:阅读以下程序说明和程序,在每题供给的假设干可选答案中,挑出一个正确答案。32运行例如:Enteranarray:6 31 –83 12sumofrow0is9sumofrow1is-7sumofrow2is15[程序]#include<stdio.h>voidmain(){ intj,k,sum=0;inta[3][20];

printf(“%d”,k);}}程序的输出是 (13) A.54321 B.5421 C.54 D.3将第6行中的continue改为break后,程序的输出是 (14) A.54321 B.5421 C.54 D.3将第6行中的continue删除(保存分号)后,程序的输出是 (15) A.54321 B.5421 C.54 D.3将第6行全部删除后,程序的输出是 (16) printf(“Enteranfor(j=0;j<3;j++)array:\n”);A.54321B.5421C.54D.3for(k=0;k<2;k++)试题五〔312〕scanf(“%d”, (9));说明:阅读以下程序〔段〕并答复以下问题,在每题供给的假设干可选答案中,选择一个正确答案。for(j+0;j<3;j++){【程序】 (10) #include<stdio.h>for(k=0;k<2;k++)voidmainsum= (11);{charc,s[80]=”HappyNewYear”;(“sumofrow%d(12) ,sum);inti;}voidf(char*s,charc);}c=getchar;(9)A.a[j][k]B.a[k][j]f(s,c);C.&a[j][k]D.&a[]k[j]puts(s);(10)A.;B.sum=-1;}C.su,m=1;D.sum=0voidf(char*s,charc)(11)A.sum+a[j][k]B.sum+a[j][j]{C.sum+a[k][k]D.0intk=0,j=0;(12)A.k B.jC.0D.1while(s[k]!=’\0’){if(s[k]!=c){312说明:阅读以下程序答复以下问题,在每题供给的假设干可选答案中,选择一个正确答案。[程序]#include<stdio.h>voidmain{ intk;for(k=5;k>0;k--)

s[j]=s[k];j++;}k++;}s[j]=’\0’;}{if(k==3)continue;/*6*/

程序运行时,输入字母a,输出 〔17〕 .A.HappyNewYear B.HappyNewYerC.HayNewYear D.HappyNwYar程序运行时,输入字母e,输出 〔18〕 .

22〕程序运行时,输入1212301,输出2。A.HappyNewYearB.HappyNewYerA、12:12:0 B、12:12:10 C、12:12:30D、12:12:40C.HayNewYearD.HappyNwYar23〕程序运行时,输入2259303,输出2。程序运行时,输入字母p,输出 〔19〕 .

A、23:0:0 B、22:59:60 C、22:59:30 22:0:0A.HappyNewYearB.HappyNewYer〔24〕2359030,输出2。C.HayNewYearD.HappyNwYarA、0:4:0 B、23:59:300C、23:59:00D、23:0:0程序运行时,输入字母b,输出 〔20〕 .A.HappyNewYear B.HppyNewYerC.HayNewYear D.HappyNwYar试题六〔312〕说明:阅读以下程序〔段〕并答复以下问题,在每题供给的假设干可选答案中,选择一个正确答案。#include<stdio.h>structst{intx,y,z;

试题七〔14〕100数。};voidf(structst*t,intn);voidmain{intk,n;structsttime;scanf(“%d%d%d%d”,&time.x,&time.y,&time.z,&n);f(&time,n);printf(“%d:%d:%d\n”,time.x,time.y,time.z);

试题八〔14〕编写程序,输入一个正整数n,计算并输出以下算式的值。要求定义和调用函数total〔n〕1+1/2+1/3+„„+1/n,函数返回值的类型是double。}voidf(structst*t,intn){t->z=t->z+n;if(t->z>=60){t->y=t->y+t->z/60;t->z=t->z%60;}if(t->y>=60){t->x=t->x+t->y/60;t->y=t->y%60;}if(t->x>=24)t->x=t->x%24;}(21)程序运行时,输入1212501,输出2。A、12:12:0 B、12:12:50 C、12:12:60 D、12:13:02023年春浙江省高等学校计算机等级考试试卷(C)1~试题6,请在答卷上各小题正确选项的对应位置处填“√⑵请将你的准考证号的后五位填写在答卷右下角的指定位置内;90分钟;试题一〔312〕说明:阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。[程序说明]输入一个正整数,依据从高位到低位的挨次输入出各位数字。运行例如:Enteraninteger:1902Thedigitsare:1902[程序]#include<stdio.h>voidmain(){intdigit,number,power,t;printf(“Enteraninteger:”);scanf(“%d”,&number);number=number<0?–number:number;power=1; (1)while( (2) ){power*=10;t/=10;};Printf(“Thedigitsare:”);While( 3 ){Digit+number/power;Printf(“%d”,digit);(4)power/=10;}}(1)A .t=1; B.t=number;C. ; D.number=1;(2)A t>=10 B.power>=100C t!=0 Dnumber!=0A power==0 B digit!=0C number!=0 Dpower>=1

Anumber/=power; Bnumber%=10Cnumber%=power; Dnumber/=10;试题二〔312〕说明:阅读以下程序说明喝程序,在每题供给的诺干可选答案中,选择一个正确答案。【程序说明】连续输入一批学生的成绩,直到输入成绩的数量超过50成绩〔有效成绩为010,将输入的有效成绩存入数组markgetmax(array,n)在有narray运行实例:Entermarks:90807765–1Max=90【程序】#include<stdio.h>#defineMAXNUM50intgetmax( (5) ){intk,max;(6)for(k=1;k<n;k++)if(max<array[k]) max=array[k];returnmax;}voidmain{intk,x;intmark[MAXNUM];printf(“Entermarks:”);k=0;scanf(“%d”,&x);while((7)){mark[k++]=x;scanf(“%d”,&x);\}if(k>0)printf(“Max=%d\n”,getmax( (8));elseprintf(“Nomarks!\n”);}A.intn;intarray[ ] B.voidCint*array Dintarray[ ],intnA.max=0 B.;C.max=array[0]; D.max=array[n];(7)A.k<MAXNUM||x>=0&&x<=100 B.k<MAXNUM&&x>=0&&x<=100C.k>MAXNUM&&x>=0||x<=100 D.k>MAXNUM||x>=0||x<=100(8)A.mark,k B.mark C.mark[] D.mark,n试题三〔312〕说明:阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案【程序说明】输入一个444sum1,再计算和输出该矩阵主对角线以上〔含主对角线〕的元素之和sum2,主对角线为从矩阵的左上角至右下角的连线。运行例如:Enteranarray:1 2 3 5 6 7 89 10111213141516sum1=34sum2=70【程序】#include<stdio.h>voidmain{intj,k,sum;inta[4][4];printf(“Enteranarray:\n”);for(j=0;j<4;j++)for(k=0;k<4;k++)scanf(“%d”,&a[j][k]);sum=0;for(j=0;j<4;j++)for(k=0;k<4;k++)if( (9) )sum+=a[j][k];printf(“sum1= (10) for(j=0;j<4;j++)for( (11)); (12);k++)(9)A.j!=3&&k!=3&&j!=0&&k!=0 B.j!=3&&k!=3//j!=0&&k!=0C.j!=3//k!=3&&j!=0//k!=0 D.j==3&&k==3//j==0&&k==0(10)A.sum1=0; B.sum=0; C.sum2=0; D.;(11)A.k=0 B.k=j C.k=1 D.k=3(12)A.k<=j B.k>0 C.k>j D.k<4

试题四〔312〕说明:阅读以下程序并答复以下问题,在每题供给的假设干个答案中选择一个正确答案。【程序】#include<stdio.h>voidmain{inti,j,k;scanf(“%d”,&i);j=k=0;7*/j=i;if((i!=0)&&(j==0))k=i;elsek=-1;/*2*/printf(“j=%d,k=%d\n”,j,k);}(13)程序运行时,输入5,输出_(13) A.j=0,k=5 B.j=5,k=5C.j=0,k=-1 D.j=5,k=-1(14)程序运行时,输入9,输出1。A.j=99,k=-1 B.j=0,k=-1C.j=0,k=99 D.j=99,k=99(15)将第12行改为k=-1;j=i/10”后,程序运行时,输入9,输出1A.j=99,k=-1 B.j=9,k=99C.j=99,k=99 D.j=9,k=-1(16)7if((i/10)>0)12k=-7;5,输出〔1。A.j=0,k=-1 B.j=0,k=0C.j=5,k=5 D.j=5,k=-1试题五〔312〕说明:阅读以下程序并答复以下问题,在每题供给的假设干可选答案中,选择一个正确答案。[程序]#include<stdio.h>intk=1;voidFun;voidmain{intj;for(j=0;j<2;j++)Fun;Printf(“k=%d”,k);}voidFun{intk=1; */printf(“k=%d,”,k);k++;}程序的输出是17。A.k=1,k=2,k=3 B.k=1,k=2,k=1C.k=1,k=1,k=2 D.k=1,k=1,k=111ststicintk=1;”后,程序的输出是〔18〕。A.k=1,k=1,k=1 B.k=1,k=1,k=2C. k=1,k=2,k=1 D.k=1,k=2,k=311k=1;”后,程序的输出是〔19〕。A.k=1,k=2,k=1 B.k=1,k=1,k=1C.k=1,k=1,k=2 D.k=1,k=2,k=3将第1120。A..k=1,k=1,k=2 B.k=1,k=2,k=3C.k=1,k=1,k=1 D.k=1,k=2,k=1试题六〔312〕说明:阅读以下程序,在每题供给的假设干可选答案中,选择一个正确答案。#include<stdio.h>structst{charc;chars[80];};char*f(structstt)voidmain{intk;structsta[4]={{‘1’,”123”},{‘2’,”321”},{‘3’,”123”},{‘4’,”321”}};for(k=0;k<4;k++)printf(“%s\n”,f(a[k]));

K++;}returnt.s;}1A.321B.21C.123D.122A.21 B.12C.3 D.1程序运行时,第3行输出A.3 B.123C.1 D.3213A.123B.1 C.3 D.321试题七〔28〕状况下,住房贷款的月还款额mone〕取决于还款月数mont,计算公示如下。客户打算在5~30定义函数cal-power(x,nxndouble。cal=money(loan,rate,monthdouble,要求调用函数cal-power(x,nxn定义函数main(),输入贷款本金loan(元)和月利率rate还款年限的范围是5~30年,输出时分别准确到年和元。要求调用函数cal-money(loan,rate,month)计算月还款额。}char*f(structstt){intk=0;while(t.s[k]!=’\0’){If(t.s[k]==t.c)returnt.s+k;2023年秋浙江省高等学校计算机等级考试试卷(C)1〔312〕阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。【程序说明】2lowerupper,输出一张华氏一摄氏温度转换表,华氏温度的取值范围是〔lowe,uppe,每次增加°cf表示华氏温度。C=(5×(f-32))/9【程序】#include<sthdio.h>main{intfahr,lower,upper;doublecelsius;printf(“Enterlower:”);scanf(“%d”,&lower);printf(”Enterupper:”);scan“%“,&uppe〕;printf(“fahrcelsius\n”);for(fahr=lower;〔1〕;〔2〕){calsius=〔3〕;Printf(“%d〔4〕\n”,fahr,celsius);}

printf(“Entera:”);scanf(“%ld”,&a);printf(“Entern:”);scanf(“%d”,&n);(5) for(i=1;i<=n;i++)(6) printf(“sum=%ld\n”,sn);}longfn(longa,intn){intI;longtn=0;for(i=1;i<=n;i++){tn=tn+a;(7) }(8) }【供选择的答案】〔5〕A、sn=0; B、; C、sn=1; D、sn=a;(6)A、sn=sn+fn(a,i); B、sn=sn+fn(a,n) C、sn=sn+fn(i,a); D、sn=sn+fn(i,a);(7)A、tn=tn*10; B、a=a*10; C、sn=tn*10; D、sn=sn+a*10;〔8〕A、return; B、returnsn; C、returna; D、returntn;}【供选择的答案】(1〕A、fahr<=upper B、fahr<upper C、fahr>=upper D、fahr>upper(2)A、fahr++ B、fahr=fahr-2 C、fahr+2 (3)A、5*(fahr-32)/9 B、(5.0/9.0)*(fahr-32) C、5/9*(fahr-32) D、5*fahr-32/9(4)A、%6d B、%6.2f C、%6.1f D、%6.0f2〔312〕2个正整数a和na+aa+aaa+a„a(n个afn(a,n),它的功能是返回aa„a(na)。例如,fn(3,2)33.【程序】#include<stdio.h>main{inti,n;longa,sn;longfn(longa,intn);

3〔312〕【程序说明】〔80个字符以外的其他字符,再推断字符串是否对称〔不区分大小写字母。【程序】#include<stdio.h>#include< (9) main{intflag,i,k,length;charstr[80];printf(“Enterastring:”);qets(str);i=k=0;while(str[i]!=’\0’){if(isupper(str[i]))str[i]=tolower(str[i]);if(isdigit(str[i])||isalpha(str[i])){}i++;}

(10) k++;

(15)将第八8行改为“continue”后,程序运行时,输入9,输出 〔15〕。A、3 B、3#3 C、3#4 D、3#5〔1〕将第八行改为“”后,输入,输 1〕 。A、3 B、3#3 C、3#4 D、3#5 (11) length=k;flag=1;for(k=0;k<=length/2;k++)if(str[k]!=str[length-1-k]){ (12) break;}if(flag) else printf(“No\n”);}【供选择的答案】(9)A、ctype.h B、string.h C、stdlib.h D、math.h(10)A、i++; B、str[k]=str[i]; C、str[i]=str[k]; D、;(11)A、str[i]=’\0’; B、str[i-1]=’\0’; C、str[k]=’\0’; D、;(12)A、flag=1; B、flag=0; C、; D、continue;

5〔312〕【程序】#include<stdio.h>main{inti,j,temp;inta[3][3]={1,2,3,4,5,6,7,8,9};voidf{int*x,int*y};for(i=0;i<3;i++)for(j=0;j<3;j++)if(i<j) f(&a[i][j],&a[j][i]); for(i=0;i<3;i++)for(j=0;j<3;j++)printf(“%2d”,a[i][j]);}voidf(int*x,int*y){intt;t=*x;*x=*y;*y=t;4〔312〕}【程序】(17)程序的输出是 〔17〕。#include<stdio.h>A、321654987B、789456123mainC、123456789D、147258369{inti,m;(18)将第8行改为“f〔&a[i][j],&a[j][i]〕;”后,程序的输出是 〔18〕。scanf(“%d”,&m);A、321654987 B、789456123for(i=2;i<=m/2;i++)C、123456789 D、147258369if(m%i==0){(19)将第8行改为“if(i<2) f(&a[i][j],&a[2-i][j]);”后,程序的输出是 〔19〕。printf(“%d”,i);A、321654987 B、789456123break;/*第八行*/C、123456789 D、147258369}(20)将第8行改为“if(i<2) f(&a[i][j],&a[i][2-j]);”后,程序的输出是 〔20〕。printf(“%d#”,i);A、321654987 B、789456123}C、123456789 D、147258369(13)5,输出A、3 B、3#3〔13〕 。C、3#4D、3#56〔312〕(14)程序运行时,输入9,输出 〔14〕 。#include<stdio.h>A、3 B、3#3 C、3#4D、3#5main{ inti,x1,x2;inta[5]={1,2,3,4,5}voidf1(intx,inty),f2(int*x,int*y);x1=x2=0for(i=1;i<5;i++){if(a[i]>a[x1])x1=I;if(a[i]<a[x2])x2=I;}f2(&a[x1],&a[0]);for(i=0;i<5;i++) printf(“%2d”,a[i]);printf(“\n”);f1(a[x2],a[i]);for(i=0;i<5;i++) printf(“2d”,a[i]);printf(“\n”);f2(&a[x2],&a[4]);for(i=0;i<5;i++) printf(“%2d”,a[i]);printf(\n“);f1(a[x1],a[3]);for(i=0;i<5;i++) printf(“%2d”,a[i]);printf(“\n”);}voidf1(intx,inty){ intt;t=x;x=y; y=t;}voidf2(int*x,int*y){ intt;T=*x *x=*y; *y=t;

C、12345 D、52341(24)程序输出时,第四行输出 〔24〕。A、52314 B、12345C、12354 D、523417〔28分〕n个不同的元素中,每次取出k个不同的元素,不管其挨次合并成一组,称为组合,组合中数计算公式如下:C=n!/((n-k)!k!)定义函数fact(n计算n的阶乘doubl。定义函数cal〔k,n〕计算组合种数c,函数返回值类型是double,要求调用函数fact〔n〕计n的阶乘。定义函数mai〔,输入正整数,输出n的全部组合种数〔1<=k<=〕要求调用函数cal〔k,n〕计算组合数。}程序运行时,第1行输出 〔21〕。A、12345 B、21345C、12354 D、52341程序运行时,其次行输出 〔22〕。A、21345 B、52341C、25341 D、12345程序运行时,第三行输出 〔23〕。A、12354 B、253142023年秋浙江省高等学校计算机等级考试试卷(C)1〔312〕阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。【程序说明】 输入一批学生的成绩,遇负数表示输入完毕,要求统计并输出各等级成绩的学生个数。成绩等级分为三级,分别为〔9~10、P6089〕和0~5。运行例如:Enterscores:887168705981910607783-10A:1;P:8;F:2;【程序】#include<stdio.h>main{intmark,a,p,f;a=p=f=0;print(“Enterscore:”);scanf(“%d”,&mark);while( (1)){if(mark>=90)a++; (2) p++; (3) f++; (4) }print(“A:&d;p:&d;F:&d;\n”,a,p,f);}【供选择的答案】〔1〕A.mark>=0 B.mark>0C.mark<=0 D.mark<0A.elseif(mark>=60) B.if(mark>=60)C.else(mark>=60) D.if(mark<90)A.else(mark<60) B.elseC.if(mark>0) D.elseif(mark<=60)A.scanf(“%d”,mark); B.scanf(“%d”,&mark);C.; D.mark=getchar;2〔312〕阅读以下程序和说明,在每题供给的假设干可选答案中,选择一个正确答案。【程序说明】 求1~999之间全部满足各位数字的立方和等于它本身的数例如153的各位数字的方和是13+53+33=153

运行例如:1153370371407【程序】#include<stdio.h>main{intdigit,j,sum,x;for(j=1;j<1000;j++)} (5) (6) do{ (7) sum=sum+digit*digit*digit;x=x/10;}while( (8) );if(sum==j)printf(“%d”,sum);}}【供选择的答案】〔5〕A.sum=0; B.sum=-1;C.sum=j; D.;(6)A.x=1; B.x=j;C.; D.x=sum;A.digit=x/10; B.;C.digit=x%10; D.digit=x;(8)A.x==0 B.j!=0C.j==0 D.x!=03〔312〕阅读以下程序说明和程序,在每题供给的假设干可选答案中,选择一个正确答案。10运行例如:Enter10integers:1098-9369100-102Aftersorted:100981096320-1-9【程序】#include<stdio.h> (9) Voidsort( (10) ){inti,index,k,t;for(k=0;k<n-1;k++){index=k;s1++;for(i=k+1;i<n;i++)for(k=1;k<=j;k++)if(a[i]>a[index]) index=i;s2++;} (11) ;}Printf(“%d%d”,s1,s2);}voidswap(int*x,int*y){intt;t=*x;*x=*y;*y=t;}main{inti,a[10];Printf(“Enter10integers:”);For(i=0;i<10;i++)Scanf(“%d”,&a[i]); (12) ;printf(“Aftersorted:”);for(i=0;i<10;i++)printf(“%d”,a[i]);printf(“\n”);}A.voidswap(int*x,int*y) B.;C.voidswap(int*x,int*y); D.voidswap(int*x,int*y)A.int&a,intn B.int*a,int*nC.int*a,intn D.inta,int*nA.swap(*a[index],*a[k]) B.swap(a[index],a[k])C.swap(index,k) D.swap(&a[index],&a[k])A.sort(a) B.sort(a[10])C.sort(a[],10) D.sort(a,10)4〔312〕阅读以下程序说明和程序,在每题供给的假设干可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论