全国计算机等级考试二级C语言历真题讲解优质PPT.ppt
《全国计算机等级考试二级C语言历真题讲解优质PPT.ppt》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级C语言历真题讲解优质PPT.ppt(70页珍藏版)》请在冰豆网上搜索。
case2:
case4:
n+=2;
printf(“%d”,n);
while(k0程序运行后的输出结果是A)235B)0235C)02356D)2356,D,A,C,(24)有以下程序mian()inti,j;
for(i=1;
i4;
i+)for(j=i;
j4;
j+)printf(“%d*%d=%d“,i,j,i*j);
printf(“n”);
程序运行后的输出结果是A)1*1=11*2=21*3=3B)1*1=11*2=21*3=32*1=22*2=42*2=42*3=63*1=33*3=9C)1*1=1D)1*1=11*2=22*2=42*1=22*2=41*3=32*3=63*3=93*1=33*2=63*3=9(25)以下合法的字符型常量是A)x13B)018C)65D)”n”,B,A,(26)在C语言中,函数返回值的类型最终取决于A)函数定义时在函数首部所说明的函数类型B)return语句中表达式值的类型C)调用函数时主函数所传递的实参类型D)函数定义时形参的类型(27)已知大写字母A的ASCII码是65,小写字母aASCII码是97,以下不能将变量c中大写字母转换为对应小写字母的语句是A)c=(c-A)%26+aB)c=c+32C)c=c-A+aD)c=(A+c)%26-a(28)有以下函数intfun(char*s)char*t=s;
while(*t+);
return(t-s);
该函数的功能是A)比较两个字符的大小B)计算s所指字符串占用内存字节的个数C)计算s所指字符串的长度D)将s所指字符串复制到字符串t中29.设已有定义:
floatx;
则以下对指针变量p进行定义且赋初值的语句中正确的是A)float*p=1024;
B)int*p=(float)x;
C)floatp=,A,D,B,D,(30)有以下程序#includemain()intn,*p=NULL;
*p=,A,(31)以下程序中函数f的功能是:
当flag为1时,进行有由小到大排序;
当flag为0时,进行由大到小排序。
voidf(intb,intn,intflag)inti,j,t;
for(i=0;
ibj:
bibj)t=b;
b=bj;
bj=t;
main()inta10=5,4,3,2,1,6,7,8,9,10,i;
f(程序运行后的输出结果是A)1,2,3,4,5,6,7,8,9,10,B)3,4,5,6,7,2,1,8,9,10,C)5,4,3,2,1,6,7,8,9,10,D)10,9,8,7,6,5,4,3,2,1,,B,(32)有以下程序voidf(intb)inti;
for(i=2;
i6;
i+)bi*=2;
main()inta10=1,2,3,4,5,6,7,8,9,10,i;
f(a);
i10;
i+)printf(“%d,”,a);
程序运行后的输出结果是A)1,2,3,4,5,6,7,8,9,10,B)1,2,6,8,10,12,7,8,9,10C)1,2,3,4,10,12,14,16,9,10,D)1,2,6,8,10,12,14,16,9,10,,B,(33)有以下程序typedefstructintb,p;
A;
voidf(Ac)/*注意:
c是结构变量名*/intj;
c.b+=1;
c.p+=2;
main()inti;
Aa=1,2;
printf(“%d,%dn”,a.b,a.p);
程序运行后的输出结果是A)2,3B)2,4C)1,4D)1,2,D,(34)有以下程序main()inta44=1,4,3,2,8,6,5,7,3,7,2,5,4,8,6,1,i,j,k,t;
iak)t=aj;
aj=ak;
ak=t;
/*按列排序*/for(i=0;
i+)printf(“%d,”,aj);
程序运行后的输出结果是A)1,6,5,7,B)8,7,3,1,C)4,7,5,2,D)1,6,2,1,A,(35)有以下程序main()inta44=1,4,3,2,8,6,5,7,3,7,2,5,4,8,6,1,i,k,t;
i3;
i+)for(k=i+i;
k4;
k+)if(aakk)t=a;
a=akk;
akk=t;
i+)printf(“%d,”,a0);
程序运行后的输出结果是A)6,2,1,1,B)6,4,3,2,C)1,1,2,6,D)2,3,4,6,B,(36)有以下程序voidf(int*q)inti=0;
for(;
i5;
i+)(*q)+;
main()inta5=1,2,3,4,5,i;
程序运行后的输出结果是A)2,2,3,4,5,B)6,2,3,4,5,C)1,2,3,4,5,D)2,3,4,5,6,B,(37)有以下程序#includemain()charp20=a,b,c,d,q=”abc”,r=”abcde”;
strcpy(p+strlen(q),r);
strcat(p,q);
printf(“%d%dn”,sizeof(p),strlen(p);
程序运行后的输出结果是A)209B)99C)2011D)1111(38)有以下程序#includemain()charp20=a,b,c,d,q=”abc”,r=”abcde”strcat(p,r);
Strcpy(p+strlen(q),q);
Printf(“%dn”,sizeof(p);
程序运行后的输出结果是A)9B)6C)11D)7,C,B,(39)有以下程序#includemain()voidf(charp10,intn)/*字符串从小到大排序*/chart10;
inti,j;
i0)strcpy(t,p);
strcpy(p,pj);
strcpy(p,t);
main()charp510=“abc”,”aabdfg”,”abbd”,”dcdbe”,”cd”;
f(p,5);
printf(“%dn”,strlen(p0);
程序运行后的输出结果是A)2B)4C)6D)3,C,(40)有以下程序voidf(intn,int*r)intr1=0;
if(n%3=0)r1=n/3;
elseif(n%5=0)r1=n/5;
elsef(-n,程序运行后的输出结果是A)2B)1C)3D)0,A,(41)有以下程序main(intargc,char*argv)intn=0,i;
iargc;
i+)n=n*10+*argvi-0;
printf(“%dn”,n);
编译连接后生成可执行文件tt.exe,若运行时输入以下命令行tt12345678程序运行后的输出结果是A)12B)12345C)12345678D)136,D,(42)有以下程序inta=4;
intf(intn)intt=0;
staticinta=5;
if(n%2)inta=6;
t+=a+;
elseinta=7;
+=a+;
returnt+a+;
main()ints=a,i=0;
for(;
i2;
i+)s+=f(i);
printf(“%dn”,s);
程序运行后的输出结果是A)24B)28C)32D)36,B,(43)有一个名为init.txt的文件,内容如下:
#defineHDY(A,B)A/B#definePRINT(Y)Printf(“y=%dn.,Y)有以下程序#include“init.txt”main()inta=1,b=2,c=3,d=4,k;
K=HDY(a+c,b+d);
PRINT(K);
下面针对该程序的叙述正确的是A)编译有错B)运行出错C)运行结果为y=0D)运行结果为y=6(44)有以下程序main()charch=“uvwxyz”,*pc;
Pc=ch;
printf(“%cn”,*(pc+5);
程序运行后的输出结果是A)zB)0C)元素ch5的地址D)字符y的地址,D,A,(45)有以下程序structSintn;
inta20;
voidf(structS*P)inti,j,t;
in-1;
i+)for(j=i+1;
jn;
j+)if(p-ap-aj)t=p-a;
p-a=p-aj;
p-aj=t;
structSs=10,2,3,1,6,8,7,5,4,10,9;
f(程序运行后的输出结果是A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,C)2,3,1,6,8,7,5,4,10,9,D)10,9,8,7,6,1,2,3,4,5,A,(46)有以下程序structSintn;
voidf(int*a,intn)inti;
i+)a+=i;
main()inti;
structSs=10,2,3,1,6,8,7,5,4,10,9;
f(s.a,s.n);
is.n;
i+)printf(“%d”,s.a);
程序运行后的输出结果是A)2,4,3,9,12,12,11,11,18,9,B)3,4,2,7,9,8,6,5,11,10,C)2,3,1,6,8,7,5,4,10,9,D)1,2,3,6,8,7,5,4,10,9,A,(47)有以下程序段typedefstructnodeintdata;
structnode*next;
*NODE;
NODEp;
以下叙述正确的是A)p是指向structnode结构变量的指针的指针B)NODEp;
语句出错C)p是指向structnode结构变量的指针D)p是structnode结构变量