资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,全国计算机等级考试,二级,C,语言,2007,年,04,月真题解析,东风高中信技组,一、选择题(,1,)(,10,)每题,2,分,(,11,)(,50,)每题,1,分,共,60,分),(1),下列叙述中正确的是,(),A,)算法的效率只与问题的规模有关,而与数据的存储结构无关,B,)算法的时间复杂度是指执行算法所需要的计算工作量,C,)数据的逻辑结构与存储结构是一一对应的,D,)算法的时间复杂度与空间复杂度一定相关,(2),在结构化程序设计中,模块划分的原则是,(),A,)各模块应包括尽量多的功能,B,)各模块的规模应尽量大,C,)各模块之间的联系应尽量紧密,D,)模块内具有高内聚度、模块间具有低耦合度,D,B,(3),下列叙述中正确的是,(),A,)软件测试的主要目的是发现程序中的错误,B,)软件测试的主要目的是确定程序中错误的位置,C,)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作,D,)软件测试是证明软件没有错误,(4),下面选项中不属于面向对象程序设计特征的是,(),A,)继承性,B,)多态性,C,)类比性,D,)封闭性,A,C,(5),下列对列的叙述正确的是,(),A,)队列属于非线性表,B,)队列按“先进后出”原则组织数据,C,)队列在队尾删除数据,D,)队列按“先进先出”原则组织数据,(6),对下列二叉树进行前序遍历的结果为,(),A,),DYBEAFCZX,B,),YDEBFZXCA,C,),ABDYECFXZ,D,),ABCDEFXYZ,A,B,C,D,E,X,Y,Z,D,C,F,(7),某二叉树中有,n,个度为,2,的结点,则该二叉树中的叶子结点为,(),A,),n+1B,),n-1,C,),2nD,),n/2,(8),在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是,(),A,)并,B,)交,C,)投影,D,)笛卡儿乘积,A,B,(9),在,E-R,图中,用来表示实体之间联系的图形是,(),A,)矩形,B,)椭圆形,C,)菱形,D,)平行四边形,(10),下列叙述中错误的是,(),A,)在数据库系统中,数据的物理结构必须与逻辑结构一致,B,)数据库技术的根本目标是要解决数据的共享问题,C,)数据库设计是指在已有数据库管理系统的基础上建立数据库,D,)数据库系统需要操作系统的支持,C,A,一、选择题,(,11,)算法中,对需要执行的每一步操作,必须给出清楚、严格的规定,这属于算法的,A,)正当性,B,)可行性,C,)确定性,D,)有穷性,(,12,)下列叙述中错误的是,A,)计算机不能直接执行用,C,语言编写的源程序,B,),C,程序经,C,编译程序编译后,生成后缀为,.,obj,的文件是一个二进制文件,C,)后缀为,.,obj,的文件,经连接程序生成后缀为,.exe,的文件是一个二进制文件,D,)后缀为,.,obj,和,.exe,的二进制文件都可以直接运行,2007,年,4,月二级,C,真题,C,D,(,13,)按照,C,语言规定的用户标识符命名规则,不能出现在标识符中的是,A,)大写字母,B,)连接符,C,)数字字符,D,)下划线,(,14,)以下叙述中错误的是,A,),C,语言是一种结构化程序设计语言,B,)结构化程序有顺序、分支、循环三种基本结构组成,C,)使用三种基本结构构成的程序只能解决简单问题,D,)结构化程序设计提倡模块化的设计方法,2007,年,4,月,B,C,(,15,)对于一个正常运行的,C,程序,以下叙述中正确的是,A,)程序的执行总是从,main,函数开始,在,main,函数结束,B,)程序的执行总是从程序的第一个函数开始,在,main,函数结束,C,)程序的执行总是从,main,函数开始,在程序的最后一个函数中结束,D,)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束,(16,),设变量均已正确定义,若要通过,scanf(“%d%c%d%c”,语句为变量,a1,和,a2,赋数值,10,和,20,,为变量,c1,和,c2,赋字符,X,和,Y,。以下所示的,输入形式中正确的是(注:,代表空格字符),A,),10X20Y,回车,B,),10X20Y,回车,C,),10X,回车,D,),10X,回车,20Y,回车,20Y,回车,2007,年,4,月,A,D,(,17,)若有代数式(其中,e,仅代表自然对数的底数,不是变量),则以下能够正确表,示该代数式的,C,语言表达式是,A)sqrt(abs(nx+ex)B)sqrt(fabs(pow(n,x)+pow(x,e)C)sqrt(fabs(pow(n,x)+exp(x)D)sqrt(fabs(pow(x,n)+exp(x),(18,),设有定义:,int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是,A,),k+B)k+=1 C)+k D)k+1,C,A,(,19,)有以下程序,其中,%u,表示按无符号整数输出,main()unsigned int x=0 xFFFF;/*x,的初值为十六进制数*,/printf(“%un”,x);,程序运行后的输出结果是,A,),-1 B,),65535 C,),32767 D,),0 xFFFF,20.,设变量,x,和,y,均已正确定义并赋值,以下,if,语句中,在编译时将产生错误信息的是,A)if(x+);B)if(xy,B,C,(21),以下选项中,当,x,为大于,1,的奇数时,值为,0,的表达式,A)x%2=1 B)x/2 C)x%2!=0 D)x%2=0,(,22,)以下叙述中正确的是,A,),break,语句只能用于,switch,语句体中,B)continue,语句的作用是:使程序的执行流程跳出包含它的所有循环,C)break,语句只能用在循环体内和,switch,语句体内,D,)在循环体内使用,break,语句和,continue,语句的作用相同,D,C,(23),有以下程序,main()int k=5,n=0;do,switch(k,)case1:case3:n+=1;k-;break;,default;n,=0;k-;case2:case4:n+=2;k-;break;,printf(“%d”,n,);,while(k,0,程序运行后的输出结果是,A,),235 B,),0235 C,),02356 D,),2356,A,(,24,),有以下程序,mian()int i,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=3 B)1*1=11*2=21*3=3 2*1=22*2=4 2*2=42*3=6 3*1=3 3*3=9 C)1*1=1 D)1*1=1 1*2=2 2*2=4 2*1=2 2*2=4 1*3=3 2*3=6 3*3=9 3*1=3 3*2=63*3=9,(,25,)以下合法的字符型常量是,A)x13 B)018 C)65 D)”n”,B,A,(,26,)在,C,语言中,函数返回值的类型最终取决于,A),函数定义时在函数首部所说明的函数类型,B)return,语句中表达式值的类型,C),调用函数时主函数所传递的实参类型,D),函数定义时形参的类型,(,27,)已知大写字母,A,的,ASCII,码是,65,,小写字母,a,的,ASCII,码是,97,,以下不能将变量,c,中大写字母转换为对应小写字母的语句是,A)c,=(c-A)%26+a,B)c,=c+32,C)c,=,c-A+a,D)c,=(A+c)%26-a,A,D,(28),有以下函数,int,fun(char,*s)char*t=s;while(*t+);,return(t-s,);,该函数的功能是,A),比较两个字符的大小,B),计算,s,所指字符串占用内存字节的个数,C),计算,s,所指字符串的长度,D),将,s,所指字符串复制到字符串,t,中,29,.,设已有定义:,float x;,则以下对指针变量,p,进行定义且赋初值的语句中,正确的是,A)float,*p=1024;,B)int,*p=(float)x;,C)float,p=,D)float,*P=,B,D,(,30,)有以下程序,#include main()int n,*p=NULL;*p=,printf(“Input,n:”);,scanf(“%d”,&p,);,printf(“output,n:”);,printf(“%dn”,p,);,该程序试图通过指针,p,为变量,n,读入数据并输出,但程序有多处错误,,以下语句正确的是,A,),int,n,*p=NULL;,B)*p=,C),scanf(“%d”,&p,),D),printf(“%dn”,p,);,A,(31),以下程序中函数,f,的功能是:当,flag,为,1,时,进行有由小到大排序;当,flag,为,0,时,进行由大到小排序。,void,f(int,b,int,n,int,flag)int,i,j,t,;,for(i=0;in-1;i+)for(j=i+1;j,bj:bi,bj,)t=,b;b,=,bj;bj,=t;main()int a10=5,4,3,2,1,6,7,8,9,10,i;f(i+),printf(“%d,”a,);,程序运行后的输出结果是,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,)有以下程序,void f(,int,b),int i;,for(i=2;i6;i+),bi,*=2;main()int a10=1,2,3,4,5,6,7,8,9,10,i;,f(a,);for(i=0;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,)有以下程序,typedef,structint,b,p;A,;,void,f(A,c)/*,注意:,c,是结构变量名*,/,int j;,c.b,+=1;,c.p,+=2;main()int i;Aa=1,2;,f(a,);,printf(“%d,%dn”,a.b,a.p,);,程序运行后的输出结果是,A,),2,,,3 B,),2,,,4 C,),1,,,4 D,),1,,,2,D,(,34,)有以下程序,main()int a44,=1,4,3,2,8,6,5,7,3,7,2,5,4,8,6,1,i,j,k,t;,for(i,=0;i4;i+),for(j,=0;j3;j+),for(k,=j+1;k,ak)t,=,aj;aj,=,ak;ak,=t;/*,按列排序*,/,for(i,=0;i4;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(),int a44=1,4,3,2,8,6,5,7,3,7,2,5,4,8,6,1,i,k,t;,for(i,=0;i3;i+),for(k,=,i+i;k,4;k+),if(a,akk,),t=,a;a,=,akk;akk,=t;,for(i,=0;i4;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),有以下程序,void,f(int,*q)int i=0;for(;i5;i+)(*q)+;main()int a5=1,2,3,4,5,i;,f(a,);,for(i,=0;i5;i+)printf(“%d,”,a);,程序运行后的输出结果是,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),有以下程序,#include main()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)20 9 B)99 C)2011D)1111,(38),有以下程序,#include main()charp20=,a,b,c,d,q,=”,abc,”,r=”,abcde,”,strcat(p,r,);,Strcpy(p+strlen(q),q,);,Printf(“%d,n”,sizeof(p,);,程序运行后的输出结果是,A)9 B)6C)11D)7,C,B,(39),有以下程序,#include main()void,f(char,p10,int n)/*,字符串从小到大排序*,/,char t10;int i,j;for(i=0;in-1;i+)for(j=i+1;j0),strcpy(t,p,);,strcpy(p,pj,);,strcpy(p,t,);main()char p510=“,abc”,”aabdfg”,”abbd”,”dcdbe”,”cd,”;f(p,5);printf(“%dn”,strlen(p0);,程序运行后的输出结果是,A)2 B)4 C)6 D)3,C,(40),有以下程序,void,f(int,n,int*r),int,r1=0;,if(n%3=0)r1=n/3;elseif(n%5=0)r1=n/5;elsef(-n,f(m,&r,);printf(“%d,n,r,”);,程序运行后的输出结果是,A)2 B)1 C)3 D)0,A,(41),有以下程序,main(int,argc,char,*,argv,),int n=0,i;,for(i,=1;iap-,aj,)t=p-a;p-a=p-,aj,;p-,aj,=t;main()int i;,struct,S s=10,2,3,1,6,8,7,5,4,10,9;,f(&s,);,for(i,=0;i,s.n;i,+),printf(“%d”,s.a,);,程序运行后的输出结果是,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),有以下程序,struct,S int n;inta20;,void,f(int,*,a,int,n)int i;,for(i,=0;in-1;i+)a+=i;main()inti;,struct,S s=10,2,3,1,6,8,7,5,4,10,9;,f(s.a,s.n,);,for(i,=0;i,s.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),有以下程序段,typedef,struct,node intdata;,struct,node*next;*NODE;NODEp;,以下叙述正确的是,A,),p,是指向,struct,node,结构变量的指针的指针,B,),NODEp,;语句出错,C,),p,是指向,struct,node,结构变量的指针,D,),p,是,struct,node,结构变量,(,48,)有以下程序,main()unsignedchara=2,b=4,c=5,d;d=,a|b,;d,printf(“%dn”,d,);,程序运行后的输出结果是,A,),3 B,),4 C,),5 D,),6,C,B,(,49,)有以下程序,#include ,main()FILE*,fp,;intk,n,a6=1,2,3,4,5,6;,fp,=fopen(“d2.dat”,”w”);fprintf(fp,”%d%dn”,a0,a1,a2);,fprintf(fp,“%,d%d%d,n”,a3,a4,a5);,fclose(fp,);,fp,=fopen(“d2.dat”,”r”);,fscanf(fp,“%,d%d”,&k,&n,);,printf(“%d%dn”,k,n,);,fclose(fp,);,程序运行后的输出结果是,A)1 2 B)1 4 C)123 4 D)123 456,D,(50),有以下程序,#include main()FILE*,fp,;inti,a6=1,2,3,4,5,6k;,fp,=fopen(“d3.dat”,”w+b”);fwrite(a,sizeof(int),6,fp);,fseek(fp,sizeof(int,)*3,SEEK_SET);/*,该语句使读文件的位置指针从文件头向后,移动,3,个,int,型数据*,/fread(a,sizeof(int),3,fp);,fclose(fp,);,for(i,=0;i6;i+),printf(“%d,”,a,);,程序运行后的输出结果是,A)4,5,6,4,5,6 B)1,2,3,4,5,6 C)4,5,6,1,2,3 D)6,5,4,3,2,1,A,二、填空题,(,6,)执行以下程序后的输出结果是,_,。,main()int a=10;a=(3*5,a+4);,printf(“a,=%,dn”,a,);,(7),当执行以下程序时,输入,1234567890,,则其中,while,循环体将执行,_,次。,include main()char,ch,;,While(ch,=,getchar,()=0),printf,(“#”);,a=14,0,(8),以下程序的运行结果是,_,。,intk=0;void,fun(int,m)m+=k;k+=m;,printf(“m,=%,dn,k=%d”,m,k,+);main()int i=4;,fun(i,+);,printf(“i,=%dk=%,dn”,i,k,);,m=4 k=4 i=5 k=5,(9),以下程序的运行结果是,_,。,main(),int a=2,b=7,c=5;,switch(a,0)case 1:switch(b0)case 1:switch(“”);break;Case 2:,printf,(“!”);break;case 0:,switch(c,=5)case 0:,printf,(“*”);break;case 1:,printf,(“#”);break;case 2:,printf,(“$”);break;default:,printf,(“,#&,(10),以下程序的输出结果是,_#include main()printf(“%dn”,strlen(“IBMn0121”);,(11),已定义,char,ch,”,$”;int i=1,j;,执行,j=!,ch&i,+,以后,,i,的值为,_,(,12,)以下程序的输出结果是,_#include main()char a=1,2,3,4,0;,printf(“%d,dn”,sizeof(a),srelen(a,);,9,1,54,(13),设有定义语句:,int a3=0,1,2;,则数组元素,a12,的值为,_,(,14,)以下程序的功能是:求出数组,x,中各相邻两个元素的和依次存放到,a,数组中,,然后输出。请填空。,main()int x10,a9,I;for(i=0;i10;i+),scanf(“%d”,&x,);for(_;i10;i+)ai-1=x+_ ;,for(i,=0;i9;i+),printf(“%d”,a,);,printf(“n,”);,0,i=1,xi-1,(15),以下程序的功能是:利用指针指向三个整型变量,并通过指针运算找出三个数中的最大值,输出到屏幕上,请填空:,main()int,x,y,z,max,*,px,*,py,*,pz,*,pmax,;,scanf(“%d%d%d”,&x,&y,&z,);,px,=,py,=,pz,=,pmax,=,if(*,pmax,*,py,)*,pmax,=*,py,;if(*,pmax,*,pz,)*,pmax,=*,pz,;,printf(“max,=%,dn”,max,);,*,pmax,=*,px,(或*,pmax,=x),(16),以下程序的输出结果是,_ int,fun(int,*,x,int,n),if(n,=0)return x0;else return x0+fun(x+1,n-1);main()int a=1,2,3,4,5,6,7;printf(“%dn”,fun(a,3);,(17),以下程序的输出结果是,_#includemain()char*s1,*s2,m;s1=s2=(char*),malloc(sizeof(char,);*s1=15;*s2=20;m=*s1+*s2;printf(“%d,n”,m,);,10,35,(18),设有说明,struct,DATEint,year;int,month;int day;,请写出一条定义语句,该语句定义,d,为上述结构体变量,并同时为其成员,year,、,month,、,day,依次赋初值,2006,、,10,、,1,:,_,(,19,)设有定义:,FILE*,fw,;,请将以下打开文件的语句补充完整,以便可以向,文本文件,readme.txt,的最后续写内容。,fw,=,fopen(“readme.txt,”,_),struct,DATA d=2006,10,1;,a,BY,东风高中,
展开阅读全文