资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,C,语言二级考试辅导,选择与填空题,1,一、选择题,在下列,C,语言程序段中,如果下面的变量都是,int,型,则输出的为,( ),sum=pad=5;pAd=sum+;,pAd+,+pAd;,printf(“%d”,pad);,A) 7 B) 6 C) 5 D) 4,参考答案,: A,2,2.,以下选项中合法的用户标识符是,( ),A) void B) _123 C) -abc D) sizeof,参考答案,: B,3.,设,int x=10,y=3,z;,则语句,printf(“%dn”,z=(x%y,x/y);,的输出结果是,( ),参考答案,: D,4.,最合适的,C,语言字符常量是,( ),A) t B) “A” C) 65 D) A,参考答案,: A,3,5.,在,C,语言中合法的字符常量是,( ),A) 084 B) 43 C) d D) x56,参考答案,: D,6.,设,x,y,为,double,类型,表达式,x=1, y=x+3/2,的值是,( ),A) 1 B) 2 C) 2.0 D) 2.5,参考答案,: C,7.,设,x,y,为,double,类型,表达式,x=1, y=x+3/2,的值是,( ),A) 1 B) 2 C) 2.0 D) 2.5,参考答案,: B,4,8.,设,a,为整型变量,不能表示数学关系,:10a15,的表达式是,( ),A) 10a10&a=15),参考答案,: A,9.,设,a=1,b=2,c=3,d=4,则表达式,:ab?a:cd?a:d,的结果,是,( ),A) 1 B) 2 C) 3 D) 4,参考答案,: D,5,10.,设,a,b,为整型变量,表达式,(a=2,b=5,ab?a+:b+,a+b),的值是,( ),A) 7 B) 8 C) 9 D) 2,参考答案,: B,11.,不能表示 的,C,语言的表达式是,( ),A) a*b/c*d B) a/(c*d)*b C) a*b/c/d D)a*b/(c*d),参考答案,: A,6,12.,下列程序段运行后,x,的值是,( ),int a=b=c=0;x=35;,if(!a) x-;,else if(b); if(c) x=3;,else x=4;,A) 34 B) 4 C) 35 D) 3,参考答案,: B,7,13.,下列程序的输出的结果是,( ),main(),char *s=”121”;,int k=0,a=0,b=0;,do k+;,if(k%2=0) a=a+sk-0continue;,b=b+sk-0 ;a=a+sk-0;,while(sk+1);,printf(“%d%d%d:,k,a,b);,A) 323 B) 332 C) 232 D) 223,参考答案,: C,8,14.,下列程序段输出的结果是,( ),main(),char ch34=“123”,”456”,”78”,*p3;int i;,for(i=0;i3;i+) pi=chi;,for(i=0;ib) a=b,b=c;c=a;,printf(“%d,%d,%d”,a,b,c);,A) 10,50,10 B) 10,30,10,C) 50,30,10 D) 50,30,50,参考答案,: A,10,16.,下列程序段的输出结果为,( ),#include ,main(),int k=10;,switch(k),case 8: k+;,case 10:k+;,case 20:k+;,case 30:k+;,printf(“%d”,k);,A) 10 B) 11 C) 12 D) 13,参考答案,: D,11,17.,下面程序段中的,while,下的,n+,执行次数是,( ),n=15;,while(n=0) n+;,A) 15,次,B),无限次,C) 0,次,D) 1,次,参考答案,: C,18.C,语言函数中的形参的缺省存储类别是,( ),A),自动,(auto) B),静态,(static),C),寄存器,(register) D),外部,(extern),参考答案,: A,12,19.,下面函数调用语句中实参的个数是,( ),func(2+3,4*5+7),(2/6-3,7*8,sin(x),A) 1 B) 2 C) 4 D) 5,参考答案,: B,20. C,语言规定,程序中各函数之间,A),既允许直接递归也允许间接递归调用,B),不允许直接递归也不允许间接递归调用,C),允许直接递归也不允许间接递归调用,D),不允许直接递归也允许间接递归调用,参考答案,: A,13,21.,下面程序的运行结果是,( ),#incude ,f(int b,int n),int i,r;,r=1;,for(i=0;i=n;i+) r*=bi;,return r;,main(),int x,a=2,3,4,5,6,7,8,9,x=f(a,3);,printf(“%d”,x);,A) 720 B) 120 C) 24 D) 6,参考答案,: B,14,22.,下面程序的运行结果是,( ),#incude ,f(int a),int b=0;,static c=3;,a=c+,b+;,return a;,main(),int a=2,j,k;,for(i=0;i2;i+),k=f(a+);,printf(“%d”,k);,A)3 B) 0 C) 5 D) 4,参考答案,: D,15,23.,下面程序的运行结果是,( ),int d=1;,f(int p),int d=5;,d+=p+;,printf(“%d ”,d);,main(),int a=3;,f(a);,d+=a+;,printf(“%d”,d);,A)8 4 B) 9 6 C) 9 4 D) 8 5,参考答案,: A,16,24.,不能把字符,Hello,赋给数组,b,的语句是,( ),A) char b10=H,e,l,l,o,B) char b10;b=“Hello”;,C) char b10;strcpy(b, =“Hello”);,D) char b10=“Hello”;,参考答案,: B,25.C,语言中,函数的隐含存储类别是,( ),A) auto B)static C)extern D),无存储类别,参考答案,: C,17,25.,下面程序的运行结果是,( ),char *alpha6=“ABCD”,”EFGH”,”IJKL”,”MNOP”,”QRST”,”UVWX”;,char *p;,main(),int i;,p=alpha;,for(i=0;i4;i+),printf(“%c”,*(pi);,printf(“n”);,A) AEIM B) BFJN C) ABCD D) DHLP,参考答案,: A,18,26.,以下叙述中不正确的是,( ),A) C,语言函数调用时,规定只能将实参的值传给形式参数,形式参数的值不能传给实参,B) C,函数既可以嵌套定义,又可以递归调用,C),函数必须有返回值,否则不能正确运行,D) C,程序中有调用关系的所有函数必须在同一文件中,参考答案,: B,27.,以下叙述中正确的是,( ),A) C,语言中总是从第一个定义的函数开始执行的,B) C,语言中所有被调用的函数必须在,main,前定义,C) C,语言总是从,main,函数开始执行的,D) C,语言的,main,函数必须放在最前面,参考答案,: C,19,28.,下列程序的输出结果是,( ),#include ,#define MUL(X,Y) (X)*Y,main(),int a=3,b=4;,printf(“%dn”,MUL(a+,b+1);,A) 13 B) 15 C) 20 D) 12,参考答案,: A,20,29. int a43=1,2,3,4,5,6,7,8,9,10,11,12;,int (*prt)3=a.*p=a0;,值不为,6,的表达式是,( ),A),*(*prt+1)2),B) *(p+5),C),*(*(prt+1)+2,) D) *(*(a+1)+2),参考答案,: A,30.,执行以下程序后,y,的值是,( ),int a=2,4,6,8,10;,int y=1,x,*p;,p=,for(x=0;xn B) p-n+ C) (*p).n+ D) +p-n,参考答案,: D,33.,定义枚举类型名正确的方法是,( ),A) enum a=one,two,three,B) enum a one,two,three,C) enum a=“one”,”two”,”three”,D) enum a “one”,”two”,”three”,参考答案,: B,23,34. char a=222;,a=a,printf(“%d,%o”,a,a);a,A) 222,336 B) 10,12 C) 244,364 D)254,376,参考答案,: B,24,二、程序填空题,1.,下列程序的功能是,:,从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入,.,请填空,.,main(),float x,amax,amin;,scanf(“%f”,amax=x; amin=x;,while (_1_),if(xamax) amax=x;,if(_2_) amin=x;,scanf(“%f”,printf(“%f %f”,amax,amin);,参考答案,: 1 x=0,2 xamin,25,2.,下面函数,f,的功能是将形参,x,的值转换成二进制数,所得二进制数的每一位放在一维数组中返回,二进制数的最低位放在下标为,0,的元素中,其它依次类推,.,请将程序补充完整。,f(int x,int b), int k=0;r;,do,r=x% _3_ ;,bk+=r;,x/= _4_ ;, while (x);,参考答案,: 3 2,4 2,26,3.,下面程序的功能是计算,1-3+5-7-99+101,的值,请将程序补充完整,main(),int i,t=1,s=0;,for(i=1;i=101;i+=2),_5_ ;s=s+t;_6_ ;,printf(“%d”,s);,参考答案,: 5 t=t*i,6 t=-t/i;,27,4.,下面的程序通过函数,average,计算数组中各元素的平均值,请将函数补充完整,float average(int *pa,int n),int i;,float avg=0.0;,for(i=0;ieps;n+),s+=t;,t=t*n/(2*n+1);,return _12_ ;,参考答案,: 11 n=1,12 2*s,30,7.,下面函数用于求,x,的,n,次方,将函数补充完整,double power(double x,int n),int i;double y=1;,for(i=1; _13_;i+),y*= _14_ ;,return y;,参考答案,: 13 i=n,14 x,31,8.,下面程序是判断输入字符串是否是“回文”,是输出“,TRUE”,否则输出“,FALSE”,。(回文是指正读和倒读的结果是一样的),请将程序补充完整。,#include ,#include ,main(),char s81,cr,*pi,*pj;,int i,j,n;,gets(s);n=strlen(s);,pi= _15_ ; pj= _16_ ;,while(*pi= ) _17_ ;,while(*pj= ) _18_ ;,while(_19_ ,if(pipj) printf(“TRUEn”);,else printf(“FALSEn”);,参考答案,: 15 s,16 s+n-1,17 pi+,18 pj-,19 pipj,20 pj,32,9.,下面程序用于输出杨辉三角形,.,将程序补允完整,杨辉三角形如下,:,1,1 1,1 2 1,1 3 3 1,1 4 6 4 1,杨辉三角形具有的性质,:,首行只有一个元素,从第二行开始,首末两元素都为,1,中间的第,col,个元素是上一行的第,col-1,个元素与上一行第,col,个元素的和。,33,#,include ,#define lastrow 16,main(),omt rpw.cp;.yhlastrow;,yh0=1;,printf(“%5dn),yh0); /*,显示首行*,/,for(row=1;row0;col-),yhcol= _22_ ; /*,生成新一行中间元素*,/,for(col=0;colrow;col+),printf(“%5d”,yhcol);,printf(“n”); /*,一行显示完后换行,以准备下一行*,/,参考答案,: 21 yhrow=1,22 yhcol+yhcol-1,34,10.,以下程序调用,invert,函数按逆序重新放置,a,数组中元素的值。,A,数组中元素的值在,main,函数中读入。,#include ,#define N 10,invert(s,i,j),int *s,i,j;,int t;,if(ij),t=*(s+i);*(s+i)=*(s+j);*(s+j)=t;,invert(s, _23_ ,j-1);,main(),int aN, _24_ ;,for(i=0;iN;i+) scanf(“%d”,a+i);,invert(a,0,N-1);,for(i=0;iwp) _25_ ;,for(i=*n;ip;i+) wi=_26_ ;,wp=x;,+*n;,参考答案,: 25 p+,26 wi-1,36,12.,以下程序建立了一个带有关结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为,-1,时,表示输入结束(键表头结点的,data,域不放数据,表空的条件是,ph-next=NULL),。,#include ,struct list int data; struct list *next;,_27_ creatlist(),struct list *p,*q,*ph;int a;,ph=(strct list*) malloc(sizeof(struct list);,p=q=ph;,printf(“Input an integer number,enter -1 to end:n”);,scanf(“%d”,37,while(a!=1),p=(struct list*) malloc(sizeof(struct list);,p-data=a;q-next=p; _28_ =p;,scanf(“%d:.,p-next=0;,return(ph);,main(),struct list *head;head=creatlist();,参考答案,: 27 struct list*,28 q,38,13.,下面程序的功能是:从键盘上输入一个字符串,把该字符串中的小写字母转换成大写字母,输出到文件,test.txt,中,然后从该文件中读出字符串并显示出来,请填空。,#include ,main(),FILE *fp;char str100;int i=0;,if(fp=fopen(“test.txt”, _29_ )=NULL),printf(“Can not open this file.n”); exit(0);,printf(“Input a string:n”);gets(str);,while(stri),if(stria,fputc(stri,fp);i+;,fclose(fp);,fp=fopen(“test.txt”, _31_);printf(str,100,fp);,fclose(fp);,参考答案,: 29 “w” 30 stri-32,30 “r”,39,
展开阅读全文