全国计算机二级语言历年20044月-20103真题及标准答案_第1页
全国计算机二级语言历年20044月-20103真题及标准答案_第2页
全国计算机二级语言历年20044月-20103真题及标准答案_第3页
全国计算机二级语言历年20044月-20103真题及标准答案_第4页
全国计算机二级语言历年20044月-20103真题及标准答案_第5页
免费预览已结束,剩余76页可下载查看

下载本文档

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

文档简介

2010年3月计算机等级考试二级C笔试试题(文字版 次数为 语言中除了main存 必须一 表 (14)若有定义:doublea=22;inti=0,k=18;,则不符合C D)浏览 性{char c=getchar(); }设计属 是 3 (10)有两个关系RT(16)以iC则由关系K得到关系T的操作是A)选 义结构体类型D)若只处理“真”和“假”两种逻辑值,应使逻辑类C)交D D)不知道a不确{int(18)以下选项中与if(a==1)a=belseafor(;a<8;a++)switch}}case}{case{intcase}}if(a<if(a<else elseA)charB)charA)k=(a<C)charD)charC)k=(a<D)k=(a<C)定义成voidreturn用{inA)intB)intC)intint}D)#defineN}int}voidfun(char*c,int{char}C)10D)5#defineNvoidfun(int*x,int{int(28)设有定义doublea[10],*s=aa[3]的}{intfor(i=0;i<5;i++)printf("%d\n",}intf(intt[],int{ints=f(a,4);}intf(intt[],int{if(n>0)returnt[n-1]+f(t,n-elsereturn}{intbfor(j=ij<=1;j++)}int{staticintx*2;returnchar}printf("%d%d\n",{intA)5for(i=1;i<=2;i++)B)10}{intnum;charname[20];char{intday;intmonth;intyear;}structworkers能给wyear赋1980#defineSUB(a)(a)-{int}{int}struct{intreal,unreal;}{FILE*fp;charstructfscanf(fp,"%s",str);{inta;charb[10];doublevoidf(structA}{structAf(a);B)}C)voidf(structA{t.a=1002;序为1队列中共有【2】素struct{intfor(j=i;j<3;j++)printf(“%d%,a[i][j]);}93】(4)软件是4合{int{模式选课可定义为:选课(学号5(6xint达式6}以判断x3和7的倍数时,关系表达式的值为真}10】{int{intintif(c==3)for(i=0;i<3;i++)elsefor(i=0;i<3;i++)elseif(c!=3)else}else11】}7】voidfun(char{chartemp;int{intfor(i=n-1;i>0;i--)str[i]=str[i-{while(m>n)m=m- }}{char程序运行后,当输入1463果scanf("%s",s);fun(s);【8】程序运行后输入:abcdef<12】{intprintf("%d-%d-%d\n",13}

{chars[100]={"OurteacherteachCif(s[i]!=s[j]=s[i];j++;}s[j]=【14】}{intfor(p=a;p-a<10;p++)scanf("%d",p);for(p=a,s=a;p-a<10;pif(*p>*s)s=15}2010年3C1-6-11-16-21-26-31-36-(4)(12)12(14)142009年9 D)带链 空

(考试时间90满分100在E-R形有三个关系R,ST其中关系TRS作投交并{intcase;floatprintF;printf(“请输入2scanf(“%df”,&case,&pjrintF);printf(“%dN-SPADE-R

定义语句无错,printfcase若有定义语句:intx=10;,则表达式x-=x+x值{inta=1,b=0;}17)设有定义:inta=1,b=2,c=3;,以下语句中执行效果与其它A)if(a>b)c=a,a=b,b=c;B)if(a>b){c=a,a=b,b=c;}C)if(a>b)c=a;a=b;b=c;D)if(a>b){c=a;a=b;b=c;}{intfor(k=1;k<3;k++)switch(k){default:c+=kcase2:case4:}}if((a>b)&&(b>c))k=1;elsek=0;if((a>b)||(b>c)

elsek=0;C)if(a<=b)elseif(b<=c)k=1;D)if(a>b)k=1;elseif(b>c)k=1;elsek=0;{chars[]={“012xy”};inti,n=0;if(s[i]>=’a’&&s[i]<=’z’)n++;}{intn=2,k=0;printf(“%d%d\n”,k,n);}A)0B)1C)5D)1A)chara=’a’;B)chara=’\n’;C)chara=’aa’;D)chara=’\x2d’;{charc1,c2;}已知字母AASCII为65,程序运行后的输出结果是voidfun(int{intp=d++;printf(“%d”,p);}{intfun(a);#defineMINintfindmax(intx[],int{inti,max;for(i=0;i<N;I++)<p=""{max=MIN;return}定义语句inti,maxmax赋值语句max=MIN;中,不应给maxMIN语句{intm=1,n=2,*p=&m,*q=&n,*r;}(27)若有定义语句:inta[4][10],*p,*q[4];且0≤i<4,则错

{charstr[}{inta[{case{case0:a[i]++;break;case1:a[i]--;case}for(i=0;i<4;i++)printf(“%d”,a[i]);}A)334B)205C)304D)030{chara[10]=”abcd”;}fun(char*a,char*while((*b=*a)!=’\0a++,bA)将a串赋给b空间使指针ba符将ab比检查abvoidfun(intn,char*s)A)void(*pf)();pf=fun;B)viod*pf();pf=fun;C)void*pf();*pf=fun;D)voidintf(intn);{inta=3,s;}intf(int{staticinta=1;return}#definef(x)x*x*x{inta=3,s,t;}A)structord{intx;inty;intz;};structorda;B)structord{intx;inty;intz;}structorda;C)structord{intx;inty;intz;}a;D)struct{intx;inty;intz;}设有定义:char*c;,以下选项中能够使字符型指针cA)charstr[]=”string”;c=str;

struct{inta;charb[10];doublec;};structAf(structAt);{structAa={1001,”ZhangDa”,1098.0};}structAf(structA(t.a=1002;strcpy(t.b,”ChangRong”);t.c=1202.0;returnt;)intr=8;某二叉树有5度为2点以及31该二叉树中共有【1】个结点。程序流程图中的菱形框表示的是2段,其中【3】阶段产生“软件需求规格说明书。或多对多的,那么“学生”和“可选课程”的联系为【4】。 其中可以作为主关键字的是【5】。若有定义语句:inta=5;,则表达式:a++的值是6若有语句doublex=17;inty;,当执行y=(int)(x/5)%2;之后y7】。8】{intx=20;printf(“%d”,0<X<20);<p=""/>printf(“%d\n”,0<X&&X<=""/>9】{inta=1,b=7;do{}while(b>1);{intf,f1,f2,i;printf(“%d%d”,f1,f2);{f=f1+f2;printf(“%d”,f);f1=f2;f2=f;}}10】intvoidfun(int{inta=10;}{intc=20;}11】struct{intID;char请将scanf(“%d12整体变量p成员ID{chara[20]=”Howarescanf(“%s”,b);printf(“%s}程序运行时从键盘输入:Howareyou?<回车则输出结果为13typedef{intnum;doublevoidfun1(RECx{RECa={16,90.0}14】fun(int{if(x/2>0)printf(“%d}{fun(6);printf(“\n”);15】2009年9月计算机等级考试二级C语言笔试参考答一、CBDABACCACBCDAACDCABBADCDCA*DCACD(10)01(5)(8)1 及答 结A)栈B)树C)队列D)二叉A)10B)8C)6 C)程序调试通常也称为Debug 有两个关系R,SRABCa32

b01c21SABa3b0c2由关系RS,则所使用的运算为A)选择B)投影C)插入D)连接属性B)键C)关系D)A)1-1B)1—1C)-11D)1-若函数中有定义语句:intk;,则A)系统将自动给k值0这时k中值无定义C)系统将自动给k-1D)这时kA)o115B)0118C)1.5e1.5D)设有定义:intx=2;,以下表达式中,值不为6的是A)x*=x+1程序段:intdoubley=3.141593printf(“%d%8.6f”,x,y);的输出结果若有定义语句:doublex,y,*px,*py,执行了px=&x,C)scanf(“%lf%le”,px,py);D)scanf(“%lf%lf”,x,y);#include<stdio.h>{intx;if(x<=3);else}{inta=1,b=2,c=3,d=0;if(a==1&&b++==2)if(b!=2||c--!=3)elseprintf(“%d,%d,%d\n”,a,b,c);else}

}注意,字母AASCII为65。程序运行后的输出结果B)n=0;while(getchar()!=’\n’)n++;C)for(n=0;getchar()!=’\n’;n++);{inta1,a2;charc1,c2;}若想通过键盘输入,使得a1的值为12,a2的是为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b, intf(intx,inty){inta=3,b=4,c=5,d;}voidfun(char{if(*s%2==0)}}{char}注意:字母aASCⅡ码值为97,程序运行后的输出结果是#includevoidfun(int*a,int{int*c;}{intx=3,y-}#includeviodf(int*p,int*q);{int

}voidf(int*p,intvoidfun(int*w,int{inti; }}B)if(i/8==0)continue;D)if(i%8==0)continue;int则对x设有定义:chars[81];inti=10;,以下不能将一行(不超A#include<stdio.h>{char*a[]={“abcd”,”ef”,”gh”,”ijk”};int}charcharchars[10];s=”BOOK!”;D)char*s;s=”BOOK!”;#include<stdio.h>intfun{intx,inty}{if(x==y)else}{int} D)auto#include<stdio.h>intb=2;intfun(int{b=*k+b;return(b);}{intfor(i=2;i<4;i++){b=fun(&a)+b;printf(“%d”,b);}

#include<stdio.h>#definePT3.5;#defineS(x)PT*x*x;{inta=1,b=2;#include<stdio.h>structord{intx,y;}{structordprintf(“%d,”,++p->x);printf(“%d\n”,++p-}IsDIV(k,n)((k%n==1)?1:0且变量m宏调用:IsDIV(m,5)&&IsDIV(m,7)为真时所要表达的是A)判断m5或者7整除判断m5和7整除C)判断m5或者7整除是否余1D)判断m5和7整除是否余1#include<stdio.h>{intt=(a<<2|b);}#include<stdio.h>{EILE}若文本文件filea.txt中原有内容为: 后,文件filea.txt中的内容为 空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有 是【4在E-R示【5】框若变量x、y义为int型且x99,y9,请将输出语句printf(【7】,x/y);补充完整,使其输出的计#include<stdio.h>main(){

charc1,c2;printf(“&c,}。#include<stdio.h>main(){intk=1,s=0;}#include<stdio.h>main()a=0,ch;{if(a&2!=0&&(ch>’a’&&ch<=’z’))ch=ch-‘a’+’A’;}}#include<stdio.h>voidfun(int{intfor(i=2;i>=0;i--)for(i=0;i<10;i++)printf(“&d”,a);} #include<stdio.h>;main({intx,y,(*p)();}Intmax(inta,int{return#include<stdio.h>main({FILEif(fp=fopen(“test.txt”,”r”))==【13】))#include<stdio.h>#include<string.h>structA{inta;charb[10];doublef(struct{structAa=(1001,”ZhangDa”,1098,0);}voidf(struct}分,(20)每题1,70C、D、E再依次出栈,则元素出栈的顺序是(A)12345ABCDEB)EDCBA54321C)ABCDE12345下列叙述中正确的是(

以下程序把三个NODETYPE型的变量 并在while循环中输出链表结点数据域中的数据,请填空#include<stdio.h>struct{intdata;structnode*next;};typedefstructnodeNODETYPE;{NODETYPEa,b,c,*h,*p;}1~10:DACDCABABC11~20:CBDDACDBCB填空题(5)菱(12)max(inta,int2008年9月二级C语言笔 及答(考试时间:120满分100构在长度为n的有序线性表中进行二分查找, 要比较的次数是(A)O(n)B)O(n2)C)O(log2n)下列叙述中正确的是( 空 结构不 结构节 空数据流图中带有箭头的线段表示的是(控制流B)事件驱动C)模块调用D)在软件开发中,需求分析阶段可以使用的工具是(A)N-SB)DFDC)PADD)在面向对象方法中,不属于“对象”基本特点的是(一致性B)C)多态性D)(一对一B)C)多对一D)(B)C)数据库系统阶段D)三个有三个关系R、S和T下RSABBCABm113m1n23由关系R和S通过运算得到关系T,则所使用的运算为( 积B)交C)并D)自然连接以下叙述中正确的是(A)C语句B)C二级C试卷2(共9简单C结束D)C写计算机能直接执行的程序是(源程序B)目标程序C)汇编程序D)以下选项中不能作为C(A)'cd'B)0.1e+6C)"\a"以下选项中正确的定义语句是(doublea;b;B)doublea=b=7;C)doublea=7,b=7;D)double,a,b;的C语言表达式是(A)2*a*b/c/dB)a*b/c/d*2C)a/c/d*b*2二进制B)C)十进制D)十六进若有表达式(w)?(--x):(++y),则其中与w式是(A)w==lB)w==0C)w!=l执行以下程序段后,w(intw='A',x=14,y=15;w=((x||

A)-1B)NULLC)l若变量已正确定义为int语scanf("%dd,%d&a,&b,&c);给a1、给b2、给c3,以下输入形式中错误的是(ò一个空格符)(A)òòò1,2,3<回车>B)1ò2ò3<回车>C)1,òòò2,òòò3D)1,2,3<回车>inta,b,c;a=10;b=50;c=30;if(a>b)a=b,b=c;printf("a=%db=%dc=%d\n”,a,b,程序的输出结果是(A)a=10b=50c=10B)a=10b=50c=30C)a=10b=30c=10D)a=50b=30c=50若有定义语句:intm[]={5,4,3,2,1},i=4;,则下面对 (A)m[--i]B)m[2*2]C)m[m[0]]下面的函数调用语句中func是(func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8)));A)3B)4C)5D)8若有定义语句:double x数组元素的(A)*pB)x[5]C)*(p+1)若有定义语句:chars[10]=" A)7B)8C)9以下叙述中错误的是(用户定义的函数中可以没有return用户定义的函数中可以有多个return一用户定义的函数中若没有return数void类二级C试卷第3(共9函数的return以下关于宏的叙述中正确的是({inti,j;for(i=3;i>=l;i--){for(j=1;j<=2;j++)printf("%d",i+j);}}程序的运行结果是(A)234B)4334554C)23D)4343452#include<stdio.h>{intx=l,y=2,z=3;if(y<z)printf("%d",++z);elseprintf("%d",++y);printf("%d\n",x++);}程序的运行结果是(A)331B)41C)2#include<stdio.h>{inti=5;{if(i%3=1)if(i%5==2){printf("*%d",i);break;}}}二级C试卷4(共9)程序的运行结果是(A)*7B)*3*5C)*5#include<stdio.h>intfun(inta,intb){if(b==0)returnelsereturn(fun(--a,--}{printf("%d\n",程序的运行结果是(A)1B)2C)3#include<stdio.h>#include<stdlib.h>intfun(intn){int

*p=n;return}{inta=fun(10);printf("%d\n",}程序的运行结果是(A)0B)10C)20D)出#include<stdio.h>voidfun(inta,intb){intt=a;a=b;}{intc[10]={1,2,3,4,5,6,7,8,9,0),for(i=0;i<10;i+=2)fun(c[i],for(i=0;i<10;i++)printf("%d,",c[i]);}程序的运行结果是(A)l,2,3,4,5,6,7,8,9,0,B)2,l,4,3,6,5,8,7,0,9,C)0,9,8,7,6,5,4,3,2,1,D)#include<stdio.h>structst二级C试卷第5(共9{intx,y;)data[2]={l,10,2,20};{structstprintf("%d,",p->y);printf("%d\n",(++p)-}程序的运行结果是(A)10,1B)20,1C)10,2#includevoidfun(inta[],int{inti,for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-1-i];a[n-1-}{intk[10]={1,2,3,4,5,6,7,8,9,10},for(i=2;i<8;i++)printf("%d",k[i]);}程序的运行结果是(A)345678B)876543 #include<stdio.h>#defineN4voidfun(inta[][N],int{intfor(i=0;i<N;i++)}{intx[][N]={{1,2,3),{4),{5,6,7,8),{9,10}},y[N],for(i=0;i<N;i++)printf("%d,",y[i]);}程序的运行结果是(A)l,2,3,4,B)1,0,7,0,C)1,4,5,9,#includeintfun(int(*s)[4],intn,int{intm,i;for(i=l;i<n;i++)if(s[i][k]>m)m=s[i][k];returnm;}二级C试卷6(共9{intprintf("%d\n",}程序的运行结果是(A)4B)34C)31#include<stdio.h>{structSTU{charname[9];charsex;doublescore[2];};structSTU}程序的运行结果是(A)Qian,f,95,92B)Qian,m,85,90C)Zhao,f,95,92D)假定已建立以下链表结构,且指针p和q示

headabcdatanext↑p则以下选项中可将q组是(A)(*p).next=(*q).next;free(p);B)p=q->next;free(q);C)p=q;free(q);D)p->next=q->next;free(q);#include<stdio.h>{chara=4;printf("%d\n",a=a<<1);}程序的运行结果是(A)40B)16C)8#include<stdio.h>{FILEchar*s1="China",*s2="Beijing";}以上程序执行后abc.dat(ChinaB)ChinangC)ChinaBeijing二级C试卷7(共9)二、填空题(每空2分,共30分)1】ABDEFXY按照软件测试的一般步骤,集成测试应在2后3】数据库设计包括概念设计、4计5】设变量a和b写出与a-=a+b价的赋值表达式【6】。若整型变量a和b为79,要求按以下格式输出a和b的值:请完成输出语句:printf7,a,b以下程序的输出结果是8#include<stdio.h>{inti,j,sum;{for(j=1;j<=i;j++)}}以下程序的输出结果是9#include<stdio.h>{intj,for(j=3;j;j--{{casecase2:printf("%d",*p++);break;case3:printf("%d",*(--p));}}}二级C试卷8(共910】#include<stdio.h>#defineN5intfun(int*s,inta,int{int*s=a;j=n;returnj;}{ints[N+1];intk;for(k=l;k<=N;k++)s[k]=k+l;}11】#include<stdio.h>intfun(intx){staticintt=0;return(t+=x);}{ints,i;for(i=l;i<=5;i++)s=fun(i);

以下程序按下面指定的数据给x按4326158#include<stdio.h>{intx[4][4],n=0,i,j;for(i=3;i>=j;12】n++;x[i][j]=13{for(j=0;j<=i;j++)printf("%3d",x[i][j]);}}以下程序的功能是:通过函数func入#include<stdio.h>long14二级C试卷第9(共9{longn=func();}long{longfor(m=0;getchar()!='@';15】retumm;}20089(1)B)(2)D)(3)C)(4)A)(5)D)(7)A)(9)C)(10)D)(11)C)(12)D)(13)A)C)(17)D)(18)C)(19)B)(20)A)(21)C)A)(25)B)(26)C)(27)D)(28)D)(29)A)B)(33)C)(34)D)(35)B)(36)C)(37)D)

20084C15

AB)自然连接D)一AB)自然连接D)将10)设有表示学生选课的三张表,学生S(学号 将10)设有表示学生选课的三张表,学生S(学号

A)图元关系B)C)控制流D)调用关A)B)C)模块化D)逐步求A)低内聚低耦合B)高内聚低耦C)低内聚高耦合D)高内聚高耦A)B)软件需求规格说明C)D)(6)对长度为n(6)对长度为n的线性表排序, 情况下,比较次数不是n(n-1A)快速排序B)冒泡排C)直接插入排序D)A)栈按“先进先出”组织数据B)C)D)(8)在数据库设计中,将E-R过程属于A)需求分析阶段B)概念设计阶C)逻辑设计阶段D)物理设计阶(9)有三个关系R、STBCa0RBCa0b1BCf3a0n2有关系RST

A成绩BCC学号,课号D)学号 ACBC语CCD用CAprintB)FORC)&aA'C'B)"C"C)'\xCC0')Ax=y*5=x+zB)int(15.8%5)x=y+z+5,++yD)x=25%5.0)Ainta=b=0;B)charCfloata=1,*b=&a,*c=&b;D)doublecharch;intch='a';printf("%c,%d,",ch,ch,k);已知字符aASCll代码为97,则执行AB定Ca,97,12k=12(17)已知字母AASCⅡ代码值为65,若变量kkchar确判断出kk式是Akk>='A'&&kk<='Z'C(kk+32)>='a'&&(kk+32)<='z'(18)当变量c不为2、4、6A(c==2)‖(c==4)‖(c==6)C(c>=2&&c<=6)&&!(c%2)intif(a>b)a=b;if(c!=a)A程序段有语法错B)3,5,3C)3,5,5#include{int{case{case0:a++;case1:b++;case2:a++;b++;case3:a++;A)a=1,b=0C)a=1,b=1#include{intfor(;x>0;x--{if(x%3){printf(“%d,”,x--);A)7,4,2C)9,7,6,4A)n=0;do{++n;}while(n<=0);C)n=10;D)for(n=0,i=1;;i++)#include{inta[--p;y=*p;A)y=0B)y=1C)y=2A)intB)intC)intD)intchars[20]=

A)可以用*p示B)sp度相C)spD数组s针变量p相26)若有定义:inta[2][3];,以下选项中对a数组元素正 的A)a[2][!1]B)a[2][3]C)a[0][3]D)a[1>2][27)有定义语句:chars[10];,若要从终端给s入5A)gets(&s[0]);C)gets(s);C)#defineMAX令A)typedefstructB)struct{intn;charc;}REC;{intn;charRECt1,t2;RECC)typedefstructREC;{intn=0;charc=’A’;}t1,t2;{intn;charc;}RECCfputs文Dfwrite到文#include{intfor(i=0;i<12;i++)for(i=1;i<5;i++)A1234B)2344C)4332D)112#includevoidfun(int*s,intnl,int{inti=nl;while(i<j){t=s[i];s[i]=s[j];s[j]=t;i++;j--{intfor(k=0;k<10;k++)printf(“%d”,a[k]);fun(a,0,3);fun(a,4,9);for(k=0;k<10;k++)printf(“%d”,a[k]); #include#includevoidfun(char*s[],int{char*t;intif(strlen(s[i])>strlen(s[j])){charfun(ss,5);A)xy,aaaaccB)aaaacc,xyC)bcc,aabcc#includeintf(int{intif(x==0||x==1)returnreturn{intz=f(3);A)0B)9C)6(35)程#includevoidfun(char*a,char{while(*a==’*’)while(*b=*a){charfun(s,t);A)*****a*bB)a*bC)a*b****D)(36)#include#include

typedefstruct{charname[9];charsex;floatscore[2];}voidf(STU{STUb={“Zhao”,’m’,85.0,90.0};intafor(i=0;i<2;i++){STUf(c);AQian,f,95,92B)CZhao,f,95,92D)(37)程#include{FILE*fp;intfor(i=0;i<3;i++)A12300B)123C)1D)(38)变量a中的数据用二进制表示的形式是 ,变量b中的数据用 。若要求将a的高4位取反,低4位不变,Aa^bB)a|bC)a&b(39)(39)在C语言中,只有在使用时才占用内存单元的变量, AautoregisterB)externregisterC)autostaticD)Af型为intBfintCfintDfint地二、填空题(每空2共30请将每一个空的正确答案些在答题卡【1】至【15】序号的横线上,答在个 个素

#defineNtypedef控(5)在数据库管理系统提供的数据定义语言、数 语言和数据{intnum;charnam[10];char控intint(6)已有定义:charc=’inta=1,b;(此处c值为空格字符{int执行b=!c&&a;后b的值为【6 for(i=0;i<N;i++)(7)设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为【7】if(【14】==’M’(8)若有定义:intk;,以下程序段的输出结果是【8for(k=2;k<6;k++,k++)

return(9)以下程序段的定义语句中,x[1]的初值是【9运行后输出的容是【10{int{printf(“%dvoidswap(int*a,int{intt=a;a=b;{intswap(p,q);printf(“%d{inta[5]={2,4,6,8,10},p=a;voidfun(int{if(x/2>0)printf(“%d{fun(3);

{SSintn=fun(W);(14)以下程序从名为filea.dat上请填空:{FILE*fp;charwhlie(!feof(fp)){putchar(ch);putchar(‘\n’);fclose(fp);1-10:CABBA11-20:CCBCB21-30:DADCA31-40:CCACC1输 关 8910、24611、313、1(13)以下程序中函数fun的功能是:统 (sex)为M的记录的个数,存入变量n中,并做为函数值返回。请空2007年9月二级C语言笔 及答(考试时间:120满分100软件是A)B)程序和文C)算法加数据结构D)A)B)改善软件的性能D)验证软件的正确A)对象的继承B)对象的多态C)对象的封装D)对象的分A)程序的效率第一,清晰第二B)程序的可读性好C)程序中有必要的注释D)输入数据前要有提示信息 A)n(n+1)/2B)nlog2nC)n(n-1)/2A)219B)221C)229

A).exeB).CC).objandB)DateC)Hi_2007y-m-dDr.TomA)028B)12.C).177.5e-3OXa234c1.5-0xf4.5e0OabcC)C须用main程序将从此开始执若在定义语句:inta,b,c,*p=&c;之后,接着执行以下选A)scanf("%d",a,b,c);C)scanf("%d",p);以下关于long、intshort述A)均占4个字节B)根据数据的大小来决定所占内存的字节数C)由用户自己定义D)由C决定A)x=y==5;B)x=n%2.5;C)x+n=I;intj;floaty;charname[50];当执行上述程序段,从键盘上输入555667777abc,yA)55566.0B)566.0C)7777.0doprintf("%d,",i);while(i++);A)0,0B)0,1C)1,1D)若程序前面已在命令中包含math.hA)if(x>=0)y=sqrt(x);B)y=sqrt(x)elsey=sqrt(-x);if(x<0)y=sqrt(-x);C)if(x>=0)y=sqrt(x);D)y=sqrt(x>=0?x:-x);{inty=9;for(y>0;y--)if(y%3==0)printf("%d",--}A)741B)963C)852(23)已有定义:charc;,程序前面已在命令行中包含ctype.hc达A)isupper(c)B)’A’<=c<=’Z’C)’A’<=c&&c<=’Z’D)c<=(‘2’-32)&&(‘a’-32)<=c{inti,j,m=55;for(j=3;j<=i;j++)m=m%j;}A)0B)1C)2A)函数的实参和其对应的形参共占同一单元B)形参只是形式上的存在,不占用具体单元C)同名的实参和形参占同一单元函数的形参和实参分别占用不同的单A)A,BB)A,68C)65,66"\\\"B)’abc’C)OlympicGames(29)设有定义:charp[]={’1’,’2’,’3’},*q=p;以下不能计算出一个charA)sizeof(p)B)sizeof(char)Csizeof(*q)D)sizeof(p[0])intaaa(char{char*t=s;

A)求字符串s的长度B)比较两个串的大小C)将串s 到串tD)求字符串s所占字节数(31)若有定义语句:inta[3][6];序a组的第10个元素A)a[0][4]B)a[1][3]C)a[0][3]voidfun(char{++p;printf("%s\n",*p);}{char*a[]={"Morning","Afternoon","Evening","Night"};}A)AfternoonB)fternoonC)Morning(33)若有定义语句:inta[2][3],*p[3确A)p=a;B)p[0]=a;C)p[0]=&a[1][2];voidfun(int*a,intn)/*funa{intt,i,j;for(i=0;i<N-if(a}{intfor(i=0;i<10;i++)printf("%d,",c);}A)1,2,3,4,5,6,7,8,9,0,C)0,9,8,7,6,5,4,3,2,1,intfun(char{intwhile(*s<=’9’&&*s>=’0’){n=10*n+*s-’0’;s++;}}{chars[10]={’6’,’1’,’*’,’4’,’*’,’9’,’*’,’}A)9B)61490C)61A)scanf()B)getchar()C)getsD)getc()A)C变量voidfun(char*t,char{}{charss[10]=”acc”,aa[10]=”bbxxyy”;}A)accxyy,bbxxyyB)acc,C)accxxyy,bbxxyyD)accbbxxyy,bbxxyyvoidfun(chars[][10],int{chart;inti,j;for(i=0;i<N-/**/}{fun(ss,5);}A)xy,aaaaccB)C)xcc,aabccD)在一个C域所在文件的全部范围B)

C)范围D)由具体定义位置和extern决inta=1;intf(intc){staticinta=2;return(a++)+c;}{intfor(i=0;i<2;i++){inta=3;k+=f(a);}}A)14B)C)16D)voidfun(intn,int{intf1,f2;if(n==1||n==2)*p=1;{fun(n-1,&f1);fun(n-}}{intfun(3,&s);}A)2B)3C)4若程序中有宏定义行:#defineN100的对C100替换标识符ND)在运行时用100替换标识符Ntypedef名,但不能用来为变量说structtt{intx;structtt*y;}structtta[4]={20,a+1,15,a+2,30,a+3,17,a};{inti;for(i=1;i<=2;i++){printf("%d,",p->x);p=p-}A)20,30,B)30,17C)15,30,typedefstruct{charname[9];charsex;floatscore[2];}STUf(STU{STUb={"Zhao",'m',85.0,90.0};inta.for(i=0;i<2;i++)a.score=b.score;returna;}{STU}

{FILE*fp;intfor(i=0;i<10;i++)}A)1,2,3,0,0,0,0,0,0,0,C)123,0,0,0,0,123,0,0,0,0, 在两种基本测试方法中,_[2] 线性表 A)Qian,f,95,92B)Qian,m,85,90C)Zhao,m,85,90uniondata{intd1;floatd2;

/C/\\AD//\BH在E-R图中距形表示

若给demo.d1赋99demo.d2中的值是99.0{inta=1,b=2,c=3,x;x=(a^b)&c;printf("%d\n",x);}0B)1C)2为:fread(buffer,size,count,fp其中buffer的

{inta=1,b;scanf("%2d%2d",&a&b);printf("%d%d\n",a,b);}以下程序的功能是:输出a、b、c请填{int} {intwhile(n!=0){d=n%10;printf("%d",d);}for(s=1.0,k=1;k<=n;ks=s+1.0/(k*(k+1)); ){s=s+1.0/(k*(k+1));_[11] {intfor(i='a';i<'f';i++,i++)printf("%c",i-'a'+'A');} char*fun(char{char*p=t;}{char*str="abcdefgh";}以下程序中函数f的功能是在数组xn个数(假定n个数互viodf(intx[],int{intp0,p1,i,j,t,m;i=j=x[0];p0=p1=0;{if(x[m]>i){i=x[m];p0=m;}elseif(x[m]}t=x[p0];x[p0]=x[n-1];x[n-t=x[p1];x[p1]= ; }

{intfor(u=0;u<10;u++)scanf("%d",&a);for(u=0;u<10;u++)printf("%d",a);}统计字母A的个数,num[1]中统计字母B的个数,其它依次类推.用{intnum[26]={0},i;char if(isupper(c))num[c-‘A’]+=_[17] } {inti,n[4]={1};{n=n[i-1]*2+1;printf("%d",n);} #defineM5#defineNM+M{intk=N*N*5;}函数main()的功能是:在 struct{intdata;structnode*next;intmin(structnode*first)/*指针first为链表头指针{strctnode*p;intp=first->next;m=p->data;p=p->next; returnm;} 计算机等级考试二级C语言参考答案1-56-1011-1516-2021-2526-3031-3536-3742-4546-504、A5、实体6、12 7、8、 9、10、 11、A)B)C)D)(7)某二叉树中有n度为2的结点,则该二叉树中的叶子关A)B)n-C)D)(8)在下列关系运算中,不改变关系表中的属性个数但能AA据A)计算机不能直接执行用C程B)CC.obj(13)按照C在(15)对于一个正常运行的C(A)A)程序的执行总是从main函数开始,在mainB)程序的执行总是从程序的第一个函数开始,在main数结程序的执行总是从main函scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中 (17)若有代数式(其中e变量),则以下能够正确表示该代数式的C是(C)(18)设有定义:intk=0;,以下选项的四个表达式中与其他三{unsignedintx=0xFFFF;/*x值为十六进制数*/}设变量xy以下if在if(x>y)x-if(y<0)else else以下选项中,当x于1的奇数时,值为0的表达式(D){intk=5,n=0; case3:n+=1;break;case2:case4:n+=2;k--}}{inti,j;{for(j=i;j<4;j++)printf(“%d*%d=%d“,i,j,i*j);}}1*1=11*2=21*3=3 B)1*1=11*2=21*3=32*1=22*2=4 2*2=42*3=6 C) D)1*2=2 2*1=21*3=32*3=6 3*1=33*2=626)在C(A)(27)已知大写字母AASCII是65,小写字母aASCII是97,以下不能将变量cintfun(char*s){char*t=s;}计算s长将s所指字符串到字符串t(29)设已有定义:floatx;则以下对指针变量p义floatint*p=(floatfloatfloat{intprintf(“Inputn:”);printf(“outputn:”);}该程序试图通过指针p变量n程序有A)intn,*p=NULL;(31)以下程序中函数f当flag1时,进行有由小到大排序;当flag0时,进行由大到小排序。voidf(intb[],intn,int{inti,j,t;for(j=i+1;j}{intf(&a[2],5,0);for(i=0;i<10;i++)}voidf(int{intfor(i=2;i<6;i++)}{intfor(i=0;i<10;i++)}typedefstruct{intvoidf(Ac)/*注意:c{intj;c.b+=1;c.p+=2;}{intA}}for(k=i+i;k<4;k++)if(a[i][i]}voidf(int{intfor(;}{int}{charp[20]={‘a’,’b’,’c’,’d’},q[]=”abc”,strcpy(p+strlen(q),r);strcat(p,q);}2092011{charp[20]={‘a’,’b’,’c’,’d’},q[]=”abc”,strcat(p,r);Strcpy(p+strlen(q),q);Printf(“%d\n”,sizeof(p));}voidf(charp[][10],intn)/*字符串从小到大排序{chart[10]; inti,j;if(strcmp(p[i],p[j])>0)strcpy(p[i],p[j]);strcpy(p[i],t);}{char}A)B)C)D)voidf(intn,int{intif(n%3==0)r1=n/3;elseif(n%5==0)r1=n/5;elsef(--n,&r1);}{int }A)B)D)main(intargc,char{intfor(i=1;in=n*10+*argv[i]-‘0’;}行tt12345D)inta=4;intf(int{intt=0;staticinta=5;if(n%2){inta=6;t+=a++;}else{inta=7;t+=a++;}returnt+a++;}{intfor(;i〈2;i++)s+=f(i);printf(“%d\n”,s);}(43)个名为init.txt # #include{inta=1,b=2,c=3,d=4,k;} (44){charch[]=“uvwxyz”,*pc;Pc=ch;printf(“%c\n”,*(pc+5));}0字符y(45)structS{intn;inta[20];};voidf(structS*P){intif(p->a[i]>p->a[j]){t=p->a[i];p->a[i]=p->a[j];p->a[j]=t;}}{inti;structSfor(i=0;i}structS{intn;inta[20];};voidf(int*a,intn){intfor(i=0;i}{inti;structSf(s.a,for(i=0;i}typedefstructnode{intdata;structnode*next;NODEA)p指向structnode指B)NODEpC)p指向structnodeD)pstructnode变{unsignedchara=2,b=4,c=5,d;d=a|b;d&=c;printf(“%d\n”,d);}{FILE intfprintf(fp,”%d%d\n”,a[0],a[1],a[2]);fprintf(fp,“%d%d%dfscanf(fp,}11123 main{FILE*fp;int置指针从文件头向后移动3个int型数据*/ } 等价类划分法属于黑箱(或黑盒)测试 数据库管理系统。段、开发阶段和阶段。编码和测试属于开发 典对其中的图形元素进行确切解释执行以下程序后的输出结果是 {int } while循环体将执行0 {charWhile((ch=getchar())==’0’)}(8)以下程序的运行结果是m=4k=4i=5 intvoidfun(int{m+=k;k+=m;printf(“m=%d\nk=%d”,m,k++);}{intfun(i++);printf(“i=%d}(9)以下程序的运行结果是 {inta=2,b=7,c=5;{case{case1:switch(“@”);Case2:printf(“!”);}case0:{case0:printf(“*”);break;case1:printf(“#”);break;case2:printf(“$”);break;}default:}}以下程序的输出结果是9#include{}已定义charch=”$”;inti=1,j;执行j=!ch&&i++以后(12)54#include{charprintf(“%d}(13)设有定义语句:inta[][3]={{0},{1},{2}};,则数组元a[1][2]的值为0和依次存放到a空。{intfor(i=0;i<10;i++)for(i=1 a[i-1]=x[i]+x[i-1] {intx,y,z,max,*px,*py,*pz,*pmax; }intfun(int*x,intn)returnx[0];elsereturnx[0]+fun(x+1,n-}{int}以下程序的输出结果是35#include{char*s1,*s2,m;}设有说structDATE{intyear;intmonth;int请写出一条定义语句,该语句定义d为上述结构体变量,并同时为其成员year、month、day依次赋初值 structDATAd={2006,10,1};(19)设有定义:FILE*fw;,请将以下打开文件的语句补充完整,以便可以向文本文件readme.txt容。fw=fopen(“readme.txt”,"a")2007年4月计算机等级考试二级C语言笔试试题答案1- 6-1011-1516- 21- 26-3031-3536-4041-45 46-501.5, 8,无答9,#13,1315,X[i-16,无答20069试二级C 化C)、避免goto语句 计B)、数据设计与接口 试B)、概要设计C)、软件D)、

在长为64的有序线性表中进行顺序查找,情况下需要 、、、、 题B)、共享问题C)、安全问题D)、对下列二叉树:进行中序遍历的结果 ACBDFEGB) 、内联函数必须通过关键字inline定、内联函数体的最后一条语句必须是rennin 合时 函数的 B)、+-++--C)、><>=<= 数表中的最后的若干个参数,FCEADBG省略须

、intconstbuffer=256;D)、double*constpoint;if为格式1:if(<条件>)<语句>格式2:if(<条件>)<语句1>else<语句B)、<条件>部分可以是一个ifif(?)if(?)?inta则数值为9的表达式 计算机等级考试二 计算机等级考试二级C语言笔试试题及答则fun的实参个数 、、、、 类 权限的 员D)、保护成员 略下列关于输入流类成员函数getline()的描述中,错误的 下列符号中,正确的C++标识符是 、constintbuffer=256;B)、const关于关键字classtypename,下列表述中正确的 、在模板形参表中只能用typename 、在模板形参表中只能用class或typename来 usingnamespacestd;intmain(){ return} usingnamespacestd;classMyClass{MyClass(charcIntp2=newMyClass(‘X’);deletep2;return} usingnamespace

inti=1;classFun{staticinti;intvalue(){returni-intvalue()const{returnintFun;;i=2;intmain(){inti=3;FunconstFunfun2;return0;} usingnamespacestd;classObj{staticinti;staticintgetVal(){teturnintvoidf(){Obj Obj Obj*ob3=new Delete usingnamespace class 填空题(230)int 填空题(230)intclass败件数数Base(charclassBase(charclassDerived;public类为Derived(charc){coutintDerivedreturn}是建立流对象fSALARY.DAT与f MyBase(intintvalue()const{returnusingnamespaceclassMyDerived;classintvirtualVoidfuncl(){cout<<MyDerived(inti):voidfune2(){cout<<MyBase(intintvalue()const{returnusingnamespaceclassMyDerived;classintvirtualVoidfuncl(){cout<<MyDerived(inti):voidfune2(){cout<<intgetK()const{returnintgutj()const{returnclassB:publicvoidfunc1(){cout<<基类的私有成员变量voidfunc2(){cout<<public、protectedIntA*p=new始} 二1]DoubleDoubleoperator+(inti,intk){return[2]一个关系表的行为[3]4][5]若有定义语句:int*a,b;,则变量b型[6]已知数组a中的元素个数为n,下列语句的作用是将下标为i的元素移动到下标为i-1的单元,其中1≤i<n。例如,当n=4,a1,2,3,4时,则移动后a2,3,4,4。请将语句补充完整:For(inti=0;i(8)已知递归函数fintf(int{If(n<=1)return1;//递归结束情elsereturnn*f(n-2);//递归}则函数调用语句f(5)的返回值是[8]。结果是[9]。usingnamespacestd;classFoo{Foo(intX){cout<<’A”}intmain()Foof[3],g(3);

return}习惯性在下列程序的输出结果是42,请将画线处缺失Usingnamespaceatd;ClassFoo{intvalue;Voidsetvalue(int[10value给Foovalue值}voidInt{Foof;}以指向派生类对象,但是只能从基数继承的成员,下列程序没有使用多态机制,其输出结果是[11]。usingnamespacestd;classBase{Voidprint(){cout<<‘B’;}};classDerived:publicBase{voidprint(){cout<<‘D’;}}intmain(){Derived*pd=newDreived);deletepd;return0;} classBase{voidClassDerived:则Base类中的成员函数fun(),在Derived类中的 限是[12](注意:要求填写private、protected或public中MyClass。[13]MyClass::operator=(constMyClass

value=rhs.value;}出一个数据,插入到已排序序列中的正确位置,InsertSort的成员函数sort()实现了插入排序算法,请将画线处缺失的部分补classInsertSort{InsertSort(int*a0,intn0):a(a0),n(n0){}//参数组首地址,n是数组元素个数void序列初始为a[1]?a[n-1]for(inti=1;iintj;for([14]j>0;--j){int*a,n;//指针a,n15]usingnamespacestd;classA{intavirtualvoidprint()const{cout<};classB:publicA{charb;B(){b=voidprint()const{cout<};voidshow(Aa&X){X,print()}intmain(){Ad1;*p;2006年9 计算机等级考2006年9 计算机等级考试二级C语言笔试试题及答一、01—05 11—15

21—25 31—35 41—45 7、10 18、162006年4 计算机等级考试二级2006年4 计算机等级考试二级C语言笔试试题及答下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,A.一对D.多对(10)数据库DB、数据库系统DBS、数据库管理系统DBMS关A.DBDBS和DBMSC.DBS含DB和A.charB.charC.charD.charstr[]="\0";A.intB.intC.intD.intA.#includeB.#include<stdio.h>{/*programming*/{/*/programming/*/printf("programming!\n");}printf("programming!\n");}C.#include<stdio.h>D.include<stdio.h>printf("programming!\n"printf("programming!\n");}(19)若有定义:floatx=1.5;inta=1,b=3,c=2;确的switch{case1.0:printf("*\n");{case1:printf("*\n");case2.0:printf("**\n");}case2:printf("**\n");}{case1:printf("*\n");{case1:printf("*\n");case2+1:printf("**\n");}casec:printf("**\n");}(20)若各选项中所用变量已正确定义,函数fun通过returnB.floatfun(inta,intfloatfun(inta,intB.{……}C.floatfun(int,int);main(){floatfun(inti,int{……x=fun(2,10);……}……x=fun(i,j);……}floatfun(inta,intB.{……}floatfun(inta,int要求通过while入字母N循intfun(int{return*p;)funC.形参PD.形参P址若有说明语句:double*p,a;则能通过scanf给*p=&a;*p=&a;p=&a;p=&a;struct{charstructnode*next;现要将qr连续,struct{intx;intinta[]={l,2},b[]={3,4};structstc[2]={10,a,20,b};(27)设fp则函数feof(fp)的返回值为inta=1,b=2,c;执行后,C值#include<stdio.h>{charc1,c2,c3,c4,c5,c6;c5=getchar();c6=getchar();}{int}{inta=0,b=0,c=0,d=0;if(a=1)b=1;c=2;elsed=3;}{inti,j,x=0;}}intfun1(doublea){returna*=a;}intfun2(doublex,doubley){doublea=0,b=0;}{double程序执行后变量w值{inti,t[][3]={9,8,7,6,5,4,3,2,1};}A.75B.35C.36D.75{intn=0,i;returnn;}}{inti,s=0,t[]={l,2,3,4,5,6,7,8,9};}voidfun1(char*p){char*q;{(*q)++;q++;}{chara[]={"Program"),}voidswap(char*x,char{chart=*x;*x=*y;}{char*s1="abc",*s2="123";}intfun(int{if(n==1)return1;}{intscanf("%d",&x);}执行程序时,给变量X入10,程序的输出结果{staticintsum=0,i;returnsum;}{inta[]={1,2,3,4,5},b[]={6,7,8,9},s=0;}intd;}{char*p[]={"3697","2584"};inti,j;longnum=0;}}}#include<stdio.h>{FILEchar*s1="Fortran",*s2="Basic";{printf("Can′topentest.txtfile\n");exit(1);}fwrite(s1,7,1,fp*把从地址s1开始的7个字符写到fpfseek(fp,0L,SEEK_SET);*文件位置指针移到文件开头}B.C二C.用C它以ASCII在D.C二A.C组成C.若函数有返回值,必须通过return回charstr[20]="Program",*p;A.*pstr[0]的值相B.strpC.str长度和pD.数组strpA.C的#include#defineCA.预处理命令行必须位于C位B.在C以"#"开C.每个C行typedef名【3若变量a,b定义为int赋值21和55,要求用printf函数以a=21,b=55的形式输出,请写出完整的的输出语句【6(7)以下程序用于判断a、b、c输出YES,否则输出NOa、b、ca、b、c:a+b>c,{floata,b,c;能elseprintf("NO\n");/*a、b、c}以下程序的输出结果是【8】}当运行以下程序时,输入abcd9insert(c

温馨提示

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

评论

0/150

提交评论