您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 全国计算机等级考试试题和答案
2002年9月全国计算机等级考试二级C语言笔试试题及答案计算机二级考试一、选择题((1)—(40)每题1分,(41)—(50)每题2分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)在32位计算机中,一个字长所占的字节数为A.1B.2C.4D.8(2)与十进制数511等值的十六进制数为A.1FFB.2FFC.1FED.2FE(3)能将高级语言编写的源程序转换成目标程序的是A.编程程序B.编译程序C.解释程序D.链接程序(4)在计算机系统中,存储一个汉字的国标码所需要的字节数为A.1B.2C.3D.4(5)下列带有通配符的文件名中,能表示文件ABC.TXT的是A.*BC.?B.A?.*C.?BC.*D.?.?(6)在多媒体计算机系统中,不能用以存储多媒体信息的是A.光缆B.软盘C.硬盘D.光盘(7)DOS命令“COPY/?”的功能是A.将当前盘当前目录中的所有文件复制到当前盘的根目录下B.将当前盘当前目录中所有以单个字符命名的文件复制到当前盘的根目录下C.以提示方式复制文件D.显示COPY命令的帮助信息(8)在Windows环境下,若要将当前活动窗口存入剪贴板,则可以按A.Ctrl+PrintScreen键B.Ctrl+PrintScreen键C.Shift+PrintScreen键D.PrintScreen键(9)在Windows环境下,单击当前应用程序窗口中的“关闭”按钮,其功能是A.将当前应用程序转为后台运行B.退出Windows后再关机C.退出Windows后重新启动计算机D.终止当前应用程序的运行(10)在Windows环境中,粘贴按钮是A.B.C.D.(11)以下叙述中正确的是A.构成C程序的基本单位是函数B.可以在一个函数中定义另一个函数C.main()函数必须放在其它函数之前D.所有被调用的函数一定要在调用之前进行定义(12)以下选项中合法的实型常数是A.5E2.0B.E-3C..2E0D.1.3E(13)以下选项中合法的用户标识符是A.longB._2TestC.3DmaxD.A.dat(14)已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量‘\101’是A.字符AB)字符aC)字符eD)非法的常量(15)以下非法的赋值语句是A.n=(i=2,++i);B)j++;C.++(i+1);D)x=j0;(16)设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是A)6.500000B)6C.5.500000D.6.000000(17)已知i、j、k为int型变量,若从键盘输入:1,2,3回车,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是A.scanf(“---”,&i,&j,&k);B.scanf(“%d%d%d”,&i,&j,&k);C.scanf(“%d,%d,%d”,&i,&j,&k);D.scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);(18)与数学式子对应的C语言表达式是A.3*x^n(2*x-1)B.3*x**n(2*x-1)C.3*pow(x,n)*(1/(2*x-1))D.3*pow(n,x)/(2*x-1)(19)设有定义:longx=-123456L;,则以下能够正确输出变量x值的语句是A)printf(“x=%d\n”,x);B.printf(“x=\n”,x);C)printf(“x=?L\n”,x);D)printf(“x=%LD\n”,x);(20)若有以下程序:main(){intk=2,i=2,m;m=(k+=i*=k);printf(“%d,%d\n”,m,i);}执行后的输出结果是A.8,6B.8,3C.6,4D.7,4(21)已有定义:intx=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2的值是A.6B.0C.2D.1(22)有一函数,,以下程序段中不能根据x值正确计算出y值的是A.if(x0)y=1;B.y=0;elseif(x==0)y=0;if(x0)y=1;elsey=-1;elseif(x0)y=-1;C)y=0;D)if(x=0)if(x=0);if(x0)y=1;if(x0)y=1;elsey=0;elsey=-1;elsey=-1;(23)以下选项中,与k=n++完全等价的表达式是A.k=n,n=n+1B.n=n+1,k=nC.k=++nD.k+=n+1(24)以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main(){intn,k;floatscore,sum,ave;sum=0.0;for(n=1;n=10;n++){for(k=1;k=4;k++){scanf(“%f”,&score);sum+=score;}ave=sum/4.0;printf(“NO%d:%f\n”,n,ave);}}上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是A.sum=0.0;B.sum+=score;C.ave=sun/4.0;D.printf(“NO%d:%f\n”,n,ave);(25)有以下程序段intn=0,p;do{scanf(“%d”,&p);n++;}while(p!=12345&&n3);此处do—while循环的结束条件是A.P的值不等于12345并且n的值小于3B.P的值等于12345并且n的值大于等于3C.P的值不等于12345或者n的值小于3D.P的值等于12345或者n的值大于等于3(26)有以下程序main(){inta=15,b=21,m=0;switch(a%3){case0:m++;break;case1:m++;switch(b%2){default:m++;case0:m++;break;}}printf(“%d\n”,m);}程序运行后的输出结果是A.1B.2C.3D.4(27)C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是A.voidB.intC.floatD.double(28)若有说明:intn=2,*p=&n,*q=p;,则以下非法的赋值语句是A.p=q;B.*p=*q;C.n=*q;D.p=n;(29)有以下程序floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8;printf(“%3.0f\n”,fun(int)fun(a+c,B.,a-C.);}程序运行后的输出结果是A.编译出错B.9C.21D.9.0(30)有以下程序voidfun(char*c,intD.{*c=*c+1;d=d+1;printf(“%c,%c,”,*c,D.;}main(){chara=’A’,b=’a’;fun(&b,a);printf(“%c,%c\n”,a,B.;}程序运行后的输出结果是A)B,a,B,aB.a,B,a,BC.A,b,A,bD.b,B,A,b(31)以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序voidsort(inta[],intn){inti,j,t;for(i=0;ifor(j=i+1,jif(a[i]}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(&aa[3],5);for(i=o;i10;i++)print(“%d,”,aa[i]);printf(‘\n”);}程序运行后的输出结果是A)1,2,3,4,5,6,7,8,9,10B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,8,7.6.5.4.9,10D.1,2,10,9,8,7,6,5,4,3(32)有以下程序intf(intn){if(n==1)return1;elsereturnf(n-1)+1;}main(){inti,j=0;for(i=i;i3;i++)j+=f(i);printf(“%d\n”,j);}程序运行后的输出结果是A.4B.3C.2D.1(33)有以下程序main(){chara[]={‘a’,‘b’,‘c’,‘d’,‘e’,‘f’,‘g’,‘h’,‘\0’};inti,j;i=sizeof(a);j=strlen(a);printf(“%d,%d\b”i,j);}程序运行后的输出结果是A)9,9B)8,9C)1,8D)9,8(34)以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。voidreverse(inta[],intn){inti,t;for(i=0;i{t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}}main(){intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0;reverse(b,8);for(i=6;i10;i++)s+=b[i];printf(“%d\n”,s);}程序运行后的输出结果是A.22B.10C.34D.30(35)有以下程序main(){intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0for(i=0;i4;i++)s+=aa[i][1];printf(“%d\n”,s);}程序运行后的输出结果是A.11B.19C.13D.20(36)有以下程序#includemain(){char*p=“abcde\Ofghjik\0”;printf(“%d\n”,strlen(p));}程序运行后的输出结果是A.12B.15C.6D.5(37)程序中头文件typel.h的内容是:#defineN5#defineM1N*3程序如下:#define“type1.h”#defineM2N*2main(){inti;i=M1+M2;printf(“%d\n”,i);}程序编译后运行的输出结果是:A.10B.20C.25D.30(38)有以下程序#includemain(){FILE*fp;inti=20,j=30,k,n;fp=fopen(“d1.dat”“w”);fprintf(fp,“%d\n”,i);fprintf(fp,“%d\n”j);fclose(fp);fp=fopen(“d1.dat”,“r”);fp=fscanf(fp,“%d%d”,&k,&n);printf(“%d%d\n”,k,n);fclose(fp);}程序运行后的输出结果是A.2030B.2050C.3050D.3020(39)以下叙述中错误的是A.二进制文件打开后可以先读文件的末尾,而顺序文件不可以B.在程序结束时,应当用fclose函数关闭已打开的文件C.在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据D.不可以用FILE定义指向二进制文件的文件指针(40)有以下程序#includemain(intargc,char*argv[]){inti,len=0;for(i=1;iprintf(“%d\n”,len);}程序编译连接后生成的可执行文件是ex1.exe,若运行时输入带参数的命令行是:ex1abcdefg10回车则运行的结果是:A.22B.17C.12D.9(41)有以下程序intfa(intx){returnx*x;}intfb(intx){returnx*x*x;}intf(int(*f1)(),int(*f2)(),intx){returnf2(x)-f1(x);}main(){inti;i=f(fa,fb,2);printf(“%d\n”,i);}程序运行后的输出结果是A.-4B.1C.4D.8(42)有以下程序inta=3;main(){ints=0;{inta=5;s+=a++;}s+=a++;printf(“%d\n”,s);}程序运行后的输出结果是A
本文标题:全国计算机等级考试试题和答案
链接地址:https://www.777doc.com/doc-2688792 .html