- 79.00 KB
- 2022-06-17 16:08:03 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
全国计算机等级考试C语言2级笔试题-2009年03月第29次11.以下选项中合法的标识符是______。A)1_1B)1—1_11D)1__12.若函数中有定义语句:intk;,则______。A)系统将自动绐K赋初值0B)这时K中的值无定义C)系统将自动绐K赋初值-1D)这时K中无任何值13.以下选项中,能用作数据常量的是______。A)0115B)01181.5e1.5D)115L14.设有定义:intx=2;,以下表达式中,值不为6的是______。A)x*=x+1B)x++,2*xx*=(1+x)D)2*x,x+=215.程序段:intx=12;doub1ey=3.141593;printf("%d%8.6f"x,y);的输出结果是______。A)123.141593B)123.141593C)12,3.141593D)123,141593016.若有定义语句:doub1ex,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是______。A)scanf("%f%f"&x,&y);B)scanf("%f%f"&x,&y);C)scanf("%1f%lf",px,y);D)scanf("%lf%lf",x,y);17.以下是if语句的基本形式:if(表达式)语句,其中“表达式”______。A)必须是逻辑表达式B)必须是关系表达式C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式18.有以下程序#includemain(){intx;scanf("%d",&x);if(x<=3);elseif(x!=1O)printf("%dn",x);}程序运行时,输入的值在______范围才会有输出结果。A)不等于10的整数B)大于3且不等10的整数C)大于3或等于10的整数D)小于3的整数19.有以下程序#includemain(){inta=1,b=2,c=3,d=0;if(a=1&&b++=2)if(b!=2||c-!=3)printf("%d,%d,%dn",a,b,c);elseprintf(%d,%d,%dn",a,b,c);elseprintf("%d,%d,%on",a,b,c);
}程序运行后的输出结果是______。A)1,2,3B)1,3,2C)1,3,,3D)3,2,120.以下程序段中的变量已正确定义for(=0;i<4;i++,i++)for(k=1;k<3;k++);printf("*")程序段的输出结果是______。A)********B)****C)**D)*21.有以下程序#inc1udemain(){char*s={"ABC"};do{printf("%d",*s%10);s++;}while(*s);}注意字母A的ASCII码值为65。程序运行后的输出结果是______。A)5670B)656667C)567D)ABC22.设变量已正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段是______。A)n=0;while((ch=getchar())!="n")n++;B)n=0;while(getchar()!="n")n++;C)for(n=0;getchar()!="n";n++);D)n=0;for(ch=getchar();ch!="n";n++);23.有以下程序#includemain(){inta1,a2;charc1,c2;scanf("%d%c%d,%c",&c1,%a2,&c2);printf("%d,%c,%d,%c,a1,c1,a2,c2);}若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是(以下[]代表空格,<CR>代表回车)______.A)12a34b<CR>B)12[]a[]34[]b<CR>C)12a34b<CR>D)12[]a34[]b<CR>24.有以下程序#inc1udeintf(intx,inty){
return((y-x)*x);}main(){inta=3,b=4,c=5,d;d=f(f(a,B),f(a,C);printf("%dn",D);}程序运行后的输出结果是______。A)10B)9C)8D)725.有以下程序#inc1udevoidfun(char*s){while(*s){if(*s%2=0)printf("%c",*s);s++}}main(){chara[]={"good"};fun(A);prntf("n");}注意:字母a的ASCII码值为97,程序运行后的输出结果是______。A)dB)goC)godD)good26.有以下程序#includevoidfun(int*a,int*B){int*c;c=a;a=b;b=c;}main(){intx=3,y=5,*p=&x,*q=&y;fun(p,q);printf("%d,%d,",*p,*q);fun(&x,&y);printf("%d,%dn",*p,*q);
}程序运行后的输出结果是______。A)3,5,5,3B)3,5,3,5C)5,3,3,5D)5,3,5,327.有以下程序#includevoidf(int*p,int*q);main(){intm=1,n=2,*r=&m;f(r,&n);printf("%d,%d",m,n);}voidf(int*p,int*q){p=p+1;*q=*q+1;}程序运行后的输出结果是______。A)1,3B)2,3C)1,4D)1,228.以下函数按每珩8个输出数组中的数据voidfun(iht*w,intn){Inti;for(i=0;i<n,i++){______printf("%d",w[i]);}printf("n");}下划线处应填入的语句是______。A)if(i/8=0)printf("n);B)if(i/8=0)continue;C)if(i%8=0)printf("n");D)if(i%8=0)continue;29.若有以下定义intx[10],*pt=x;则对x数组元素的正确引用是______。A)*&x[10]B)*(x+3)C)*(pt+10)D)pt+330.设有定义:chars[8];inti=O;,以下不能将—行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是______。A)gets(s);B)white((s[i++]=getchar())!="n");s[i]= ;C)scanf("%s",s);D)d0{scanf("%c",&s[i]);}while(s[i++]!="n";s[i]=" ";31.有以下程序#includemain(){char*a[]={"abcd","ef","gh","ijk"};inti;for(i=0;i<4;i++)printf("%c",*a[i]);}
程序运行后的输出结果是______。A)ageiB)dfhkC)abcdD)abcdefghijk32.以下选项中正确的语句组是______。A)chars[];s="BOOK!";B)char*s;s={"BOOK!"};C)chars[10];s="BOOK!";D)char*s;S="BOOK!";33.有以下程序#includeintfun(intx;inty){if(x=y)reurn(x);elsereturn((x+y)/2);}main(){inta=4,b=5,c=6;printf("%dn",fun(2*a,fun(b,c)));}程序运行后的输出结果是______。A)3B)6C)8D)1234.设函数中有整型变量n,为保证其在未赋初值的情况下初值为0,应选择的存储类别是______。35.有以下程序#includeintb=2;intfun(int*k){b=*k+b;return(b);}main(){inta[10]={1,2,3,4,5,6,7,8,},i;for(i=2;i<4;i++){b=fun(&a[i])+b;printf("%d",b);}print("n");}程序运行后的输出结果是______。A)1012B)810C)1028D)101636.有以下程序#include#definePT3.5;#defineS(x)PT*x*x;main(){Inta=1,b2;printf("%4.1fn",S(a+b);}
程序运行后的输出结果是______。A)14.0B)31.5C)7.5D)程序有错无输出结果37.有以下程序#includestructord{intx,y;}dt[2]={1,2,3,4};main(){structord*p=dt;printf("%d,",++p->x);printf("%dn",++p->y);}程序的运行结果是______。A)1,2B)2,3C)3,4D)4,138.设有宏定义:#defineIsDIV(k,n)((k%n=1)?1:0)且变量m已正确定义并赋值,则宏调用:IsDIV(m,5)&&IsDIV(m,7)为真时所要表达的是______。A)判断m是否能被5或7整除B)判断m是否能被5和7整除C)判断m或者7整除是否余1D)判断m被5和7整除是否都余139.有以下程序#includemain(){inta=5,b=lt;t=(a<<2)|b;printf("%dn",t);}程序运行后的输出结果是______。A)21B)11C)6D)140.有以下程序#includemain(){FILE*f;f=fopen("filea.txt","w");fprintf(f,"abc");fclose(f);}若文本文件filea.txt中原有内容为:hello,则运行以上程序后,文件filea.txt中的内容为______。A)helloabcB)abcloC)abcD)abchello二、填空题3.符合结构化原则的三种基本控制结构是:选择结构、循环结构和【3】。6.表达式(int)((double)(5/2)+2.5)的值是【6】4[评析]本题中,在表达式中由于5和2都是整型数,所以5/2结果为2,然后再加2.5,通过“(double)”转换成双精度型,结果为4.5,最后再强制转换成整型为4。7.
若变量x、y已定义为int类型且x的值为99,y的值为9,请将输出语printf(【7】,x/y);补充完整,使其输出的计算机结果形式为:x/y=11。8.有以下程序#include<stdio.h>main(){charc1,c2;scanf("%c",*c1);while(c1<65||c1>90)scanf("%c",&c1);c2=c1+32;printf("%c,%cn",c1,c2);}程序运行输入6回车后,自否输出结果、结束运行(请回答能或不能)【8】。9.以下程序运行后的输出结果是【9】。#include<stdio.h>main(){intk=1,s=0;do{if((k%2)!=0)continue;s+=k;k++;}while(k>10);printf("s+%dn",s);}10.下列程序运行时,若输入labcedf2df<回车>输出结果为【10】。#include<stdio.h>main(){chara=0,ch;while((ch==getchar())!="n"){if(a%2!=0&&(ch>="a"&&ch<="z"))ch=ch"a"+"A";a++;prtchar(ch);}printf("n");}11.有以下程序,程序执行后,输出结果是【11】#include<stdio.h>voidfun(int*A){a[0]=a[1];}main(){inta[10]={10,9,8,7,6,5,4,3,2,1,},i;for(i=2;i>1=0;i-)fun(&a[i]);for(i=0;i<10;i++)printf("%d,a[i]);printf("n");}12.请将以下程序中的函数声明语补充完整。#include<stdio.h>int【12】
main(){intx,y,(*p)();sccanf("%d%d",&x,&y);p=max;printf(%dn",(*p)(x,y));}intmax(inta,intb){return(a>b?a:b);}13.以下程序用来判断指定文件是否能正常打开,请填空。#include<stdio.h>main(){FILE*fp;if(((fp=fopen("test.txt","r"))=【13】))printf("未能打开文件!n");elseprintf("文件打开成功!n");}14.下列程序的运行结果为【14】。#include#includestructA{inta;charb[10];doublec;};voidf(structA*t);main(){structAa={1001,"ZhangDa",1098.0};f(&a);printf("%d,%s,%6.lfn",a.a,a.b,a.C);}voidf(structA*t){strcpy(t->b,"ChangRong");}15.以下程序把三个NODEIYPE型的变量链接成—个简单的链表,并在while循环中输出链表结点数据域中的数据。请填空。#include<stdio.h>structnode{intdata;structnode*next;};typedefstructnodeNODETYPE;main(){NODETYPEa,b,c,*h,*p;a.data=10;b.data=20;c.data=30;h=&a;anext=&b;b.next=&c;c,next=" ";p=h;while(p){printf("%d,",p->data):【15】;}printf("n");}