b[j]:b[i]143C)19,9,8,7,6,5,4,3,2,1,标准答案:BD)5,4,3,2,1,6,7,8,9,10,D)2344D)5264)有以下程序:普鄙?yuan.commts[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++)c[s[i]]++;for(i=l;i<5,i++)X泮部猫力⑴);yuan一程序的运行结果是A)1123B)4332C)1234标准答案:B265)有以下程序“训&护8..inttunl(doublea)(xeturn(int)(a=*=a);}intfun2(doublex,doubley)(doublea=0,b=0;2=funl(t=funi(y).xeturn(int)(a+b);}main()(doublew;yu沼m2(1.1,2.0);yprintf("%4.2f",w);}程序执行后输出结果是A)5.00B)0.0C)5.21标准答案:A266)设有定义港句ig4松,(int);yuan.com则以下叙述正确的是Oa)f是基类型为int的指针变量OB)f是指向int类型一维数组的指针变量Oc)f是指向函数的指针变量,该函数具有一个,nt类型的形考Od)f是函数名,该函数的返回值是基类型为mt类型的地址标准答案:c267)有以下程序ain小脾端tdi?.h>yuan.(voidfun(int*a,int*b){int*c;}c=a;a=b;b=c;main。{intx=3,尸5,*p=&x,*q=&y;fun(p,q);PTintfCM,%d,*p,*q);fun(3,&y);piintf(%d,%d
144',*p,*q);程序运行后的输出结果是A)3,5,5,3B)5,3,5,3C)5,3,3,5
145标准答案:D268)若有定义:咻"热5];yuan则以下不能正确表示该数组元素的表达式是OA)Ob)*(fcv[o][o]+i)Oc)*(*»+])Od)*(rH)[4]yuan-标准答案:D269)有以下程序#in外删黑h>yuan.comvoidfiintblJ){inti;for(i=2;i<6;i++)b[i]*=2;mainO{inta[10]={1,2,3,4,5,6,7,8,9,10),i;for(i=0;i=’0')return(n);)main():黑tf那昆楹*程东的运行结果是yuan.comxiaoyu{n=10*rr»*s-'0';s++,}A)9B)5C)61490D)61标准答案:D271)若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误OA)MihSCcomyudn.comyu3n.com{floatfun(inti,intj);x=fun(i,j);}floatfun(inta,intb){}Oil)main。{x=fun(2,10);}floatfun(inta.intb){}yU3n.com、..yudn.comyudn.comOc)floatfun(infa,intb){}jnainC{……x=fun(i,j);}OlOfloatfun(int,int);孰ainC{x=fun(2,10);}z,intb){Jyuan.comyuan.com标准答案:B272、若有定义语句:intyear=2009,*p=&year;以下不能使变量year中的值增加至2010的语句是
146A)++(*p)B)*p+=1C)(*p)++D)*p++;标准答案:D273、若有定义语句:inta,b,c,*p=&c;接着执行以下选项中的语句,则能正确执行的语句是A)scanf("%d",&p);B)scanf("%d”,a,b,c);C)scanf(H%d%d%dn,a,b,c);D)scanf("%d”,p);2M)以下错误的定义语句是Oa)intyu»[41(3]={{l,2,3},{1,2,3},{“劣3},dl,2,3}};Ob)intx[4][]={{1,2,3},{1,2,3},{1,2,3},(1,2,3}};OC)intx[][3]={1,2,3,41;OD)intx[][3]={{0],{1},{1,2,3});标准答案:E275)有以下程序:/stdio.h〉{inti,t[][3]={9,8,7,6,5,4,3,2,1};forii=0;i<3;i++)printf("%d",t[2-i][i]);}程序执行后的输出结果是Oa)369yuan.comjOb)751Oc)753OD)357标准答案:D2761有以下程序voiS'^CinJ10*^mtn)/*磁的功能是将新指数组元素欢关到小排序♦/{intt,i,j;for(i=0;icharf(charx){returnx*x+'a';}main(){chara,b=0,for(a=0;a<4;a+=l){b=f(a)/putchax(b);yuan.com则程序的褊出结果是
147A)ABEJ标准答案:D278、若有以下程序B)ABCDC)abedD)abej#includevoidsp(int*a){intIf2;a=&b;*a=*a♦2;yuan.compnntf(*%d,*a);main(){intk=3,*p=&k.sp(p);pr.冢%d,%d
148",k,*p)yua(A)6,6,6标准答案:D279、以下程序(B)6,3,6若有(C)4,3,4(D)4,3,3#includeintk=7voidf(int**s){intxt=4k;*s=t;yuan.cxxnpxintfC%d,%d,%d,k,*t,**s);nainOvuan-{int;=3,*p=Ai,W=&p;f(r);printfC%d,%149",i,*p,yuan♦*r);则程序的输出结果是(A)3,7,7,7,7,7标准答案:D280、若有以下程序(B)3,337,7,7(C)7,7,7,333(D)7,7,7,37,7#inclyi^eintJ*fTint*s,int*t){int*k;if(叼<*t){k=s;returns;yuan.ccmt=k;(aainO{inti=3,产%怔*q=&j,*r;r=f(p,q);printf(*%d,%d,%d,%d,%d
150”,}则程序的输出结果是(A)5,3,5,3,5标准答案:C281若有以下程序$include#defineN4(B)3,5,5,3,5(C)3,5,3,5,5y)(D)5,3,3,5,5vcidfun(inta[][N],int{inti,j,for(i=0;ia[i][j]):8叼L[“))4,5,6,7,8,9,10,11,12,13,14,15,16},y[N],i;yuan.coafor(i=O;i151则程序输出结果是(A)(C)标准答案:1,2,3,4,13,14,15,16,1,5,9,13,4,8,12,16,C(B)13,14,15,16,1,2,3,4,(D)4,8,12,16,1,5,9,13,282若有以下程序yuan.eo«n4includevoid^fun(inta[],intn)I.intt,i,j;for(i=l;ia[j]){t=a[i];a[i]=a|j];a[j]=tj{intc[10)=崩泡驾%6,5,4,3,2,l},i;fun(c,10);for(i=0;i<10;i++)printf(*%d,c[i]);}printf(*
152*);则程序的输出结果是(A)1,10,3,8,5,6,7,4,9,2,(B)2,9,4,7,6,5,8,3,10,1,(C)10,9,8,7,6,5,4,3,2,1,(D)10,1,8,3,6,5,4,7,2,9,标准答案:D283、若有以下程序用曲、tdio;h>ytcharf(charx){returnx*x%10+'O';}aainO{chara;intb=0;for(a=0;a<5;aF){b=f(a),putchar(b);}•.tnion则程序的输出结果是(A)00000(B)01496(C)014916(D)01234标准答案:B284、若有以下程序#includevoid?p(int*a)yuanx«int=a=43;b=2;*a♦2;printf(*%d,*a=*a*2;printf(*%d,yuamainO{intk=3;sp(tk);则程序的输出结果是(A)9,4,9(B)6,12,12(C)6,4,4(D)6,4,6标准答案:D285、若有以下程序:詈悒.答io.h>yuan.5vcidf(int**s){int*t=Wc;s=&t;printf(*%d,%d,%d,",k,;{inti=3,*p=4i>=&p,Vlianf(r)ygmyuanxomprintf(*%d,%d,%d
153*,i,*p,**r);}则程序的输出结果是(A)7,5,7,3,57,(B)7,7,5,3,3,3,(C)7,5,7,3,3,3,(D)7,5,5,3,3,3.标准答案:D286、
154若有以下程序#includeint*f(int*s,int*t){intk;if(*s<*t){k=*s;*s=*t;*t=k}returns;}main(){inti=3,j=5,*p=&l1*q=&j,*r;r=f(P,q);printf(u%d,%d,%d,%d
155",i,j,*p,*q,*r)}则程序的输出结果是(A)5,3,3,5,5(B)3,5,3,5,5(C)3,5,5,3,5(D)5,3,5,3,5标准答案:D287、有以下程序#include#defineN4voidfun(intaO[M],intbfl,intflag){inti,j;for(i=0;iaO][i]):(b[i]156");}则程序的输出结果是(A)1,5,9,13,4,8,12,16,(B)13,14,15,16,1,2,3,4,(C)4,8,12,16,1,5,9,13,(D)1,2,3,4,13,14,15,16,标准答案:D288、有以下程序#includevoidfun(intaQ.intn){intfor(i=0;ia[j]){t=a[i];a[i]=a[j];aO]=t:}
157main(){intc[10]:{10,9,8,7,6,5,4,3,2,1},i;fun(c,10);for(i=0;i<10;i++)printf(H%dn,c[i]);printf("
158”);}则程序的输出结果是(A)1,10,3,8,5,6,7,4,9,2,(B)10,9,8,7,6,5,4,3,2,1,标准答案:D289、有以下程序#includeintfuna(inta,intb){returna+b;}main(){intx=6,y=7,z=8,r;r=fun(fun(x,y),z-);printf(H%d
159M,r);)程序运行后的输出结果是(A)15(B)21标准答案:B290、以下选项中函数形参不是指针的是(A)fun(int&p){...}(B)fun(intp[]){…}(C)fun(int&a){...}(D)标准答案:A291、有以下程序#includemain(){inty=1,x,a[6]={2,4,6,8,10},*p;p=&a[1];for(x=0;x<3;x++)y=y+*(p+x);printf("%d
160",y);}程序运行后的输出结果是(A)19(B)18标准答案:A292、有以下程序#includevoidfun(int*s,intn,int*k){inti;for(i=0,*k=i;is[*k])}main(){inta[5]={1,6,2,8.0},k;fun(a,5,&k);printf("%d%d
161",k,a[k]);)在横线处应填入的内容是(A)k=i-s(B)*k=i-s(C)10,1,8,3,6,5,4,7,2,9,(D)2,9,4,7,6,5,8,3,10,1(C)31(D)20(C)20(D)17(C)k=i(D)*k=i
162标准答案:D293、有以下程序#includemain(){inta[3][4]={1,3,57,9J1J3J5J7J9,21,23}XW]=aj,j,k=0;for(i=0;i<3;i++)for0=O;j<2;j++)k=k+*(*(p+i)+j);printf(u%d
163",k);)程序运行后的输出结果是(A)60(B)99(C)108(D)68标准答案:A294、有以下程序#includeintfuna(inta,intb){returna+b;}intfunb(inta,intb){returna-b;}intsss(int(*t)(),intx,inty){return((*t)(x,y));}main(){intx;x=sss(funa,9,3);x+=sss(funb,8,3);printf(M%d
164,,,x);)程序运行后的输出结果是(A)17(B)22(C)24(D)23标准答案:A295、有以下程序#includevoidfun(inta,intb,intc){a=b;b=c;c=a;}main(){inta=10,b=20,c=30;fun(a,b,c);printf(u%d,%d,%d
165M,c,b,a);)程序运行后的输出结果是(A)30,20,10(B)0,0,0标准答案:A296、有以下程序#includemain(){intc[6]={10,20,30,40,50,60},*p,*s;p=a;s=&c[5];printf("%d
166”,s・p);)程序运行后的输出结果是(C)20,30,10(D)10,20,30(A)5(B)60标准答案:A297、有以下程序#includemain()(C)6(D)50
167{inta[3]={0},i,j,k=2;for(i=0;imain(){inta[5]={2,4,6,8,10},*p,**k;p=a;k=&p;printf("%d”,*(p++));printf("%d
168",**k);}程序运行后的输出结果是(A)46(B)44(C)22(D)24标准答案:D299.有以下程序#includemain(){intaa[3][3]={{2},{3},{6}},i,*p=&a[0][0];for(i=0;i<2;i++){if(i==O)aa[i][i+1]=*p+1;else++p;printf("%d}}程序运行后的输出结果是(A)46(B)43(C)26(D)23标准答案:D300、以下函数返回数组中最大值的下标#includeintfun(int*s,intn)(inti,k;for(i=0,k=i;is[k])jreturn(k);)在横线处应填入的内容是A)k=lB++kCk++Di=k答案A301以下叙述中正确的是A实用的C语言源程序总是有一个或多个函数组成B不同函数的形式参数不能使用相同名称的标识符C用户自定义的函数只能调用库函数D在C语言的函数内部,可以定义局部嵌套函数答案:A302以下叙述中正确的是Aint*p1,int**p2,int*p3;都是合法的定义指针变量语句
169B语句p==NULL;与p==\0是等价的语句Cp==NULL;执行后,指针p指向地址为。的存储单元D指针变量只能通过求指针运算符(&)获得地址值答案:A303以下叙述中正确的是A即使不进行强制类型转换,在进行指针赋值运算时,指针变量的基类型也可以不同B指针变量之间不能用关系运算符进行比较C设置p是一个指针变量,则语句p==0;是非法的,应使用p==NULL;D如果企图通过一个空指针来访问一个存储单元,将会得到一个错误信息答案:D304以下叙述中正确的是A在引用数据元素时,下标表达式可以使用浮点数B数组说明符的一对方括号只能使用整型变量,不能使用表达式C一条语句定义一个数组D每一数组包含具有同一类型的变量,这些变量在内存中占连续的存储单元答案:D305以下叙述中正确的是A数组下标的下限由数组中第1个被赋值元素的位置决定B数组下标的下限是1C数组元素的下标下限由第一个非零元素的位置决定Dcharc1,c2,*c3,c4[40];是合法的变量定义语句答案:D306以下叙述中正确的是A语句chara[3];a="AB”;是合法的,因为数组有三个字符空间的容量,可以保存两个B语句chara[2]={,,A,,;,B"};定义了一个包含两个字符的数组C语句inta[]={0};是不合法的,遗漏了数组的大小D语句inta[8]={0};是合法的答案:D307以下叙述中正确的是A函数名允许用数字开头B函数调用时不必区分函数名称的大小写C函数调用时,函数名必须与被调用的函数名完全一致D在函数体中只能出现一次return语句答案:C308以下叙述中正确的是A在对指针进行加减运算时,数字1表示1个存储单元的长度B如果p是指针变量*p+1和*(p+1)的效果一样C如果p是指针变量,则&p是不合法的表达式D如果p是指针变量,则*p是变量p的地址值答案:A309以下叙述中正确的是A设有指针变量double*p,则p+1将指针p移动8个字节B函数的形参类型不能使指针类型C基类型不同的指针变量可以相互混用D函数的类型不能是指针类型答案:A310如果定义floata[10],x;则以下叙述中正确的是A三个表达式a[1]、*(a+1)和*&a[1]表示的意思完全不同B表达式*&a⑴是非法的,应该写成*C表达式a+1是非法的D表达式a=&x是非法的答案:D311int*func(inta[10],intn);则以下叙述中正确的是A说明中的a[10]改为a□或*a效果完全一样
170Bfunc函数中不能对a进行移动指针(如a++)的操作C只有指向10个整数内存单元的指针,才能作为实参传递给形参D形参a对应的实参只能是数组名答案:A312以下叙述中正确的是A语句int20[3]={1,2,4,5};是错误的初始化形式B在逻辑上可以把二维数组看成是一个具有行和列的矩阵或表格C语句inta[4][3]={{1,2},{4,5}};是错误的初始化形式D语句inta[4][3]={1,2,45,};是错误的初始化形式313有以下程序includeviodfun(intx,inty,int*c,int*d)(*c=x+y;*d=x-y;)main()(inta=4,b=3,c=0,d=0;fun(a,b,&c,&d);printf("%d%d
171",c,d);)程序的输出结果是A71BOOC34D43答案:A314有以下程序#includevoidfun(int*p,int*q)(t=*p;*p=*q;*q=t;*q=*p;}main(){inta=0,b=3;fun(&a,&b);printf("%d%d”,a,b);)程序的输出结果是A90B09COOD99答案:D315有以下程序#includemain(){intaO={2,4,6,8,10},x*P,y=1;
172p=&a[1];for(x=0;x<3;x++)y+=*(p+x);printf(',%d
173,,,y);}程序的输出结果是A13B15C11D19答案:D316有以下程序#includemain(){inti,x[3][3]={1,2,3,4,5,6,7,8,9);for(i=0;i<3;i++)print("%dM,x[i][2-i]);printf("
174”);)程序的输出结果是A369B147C150D357答案:D317有以下程序#includemain()(inta[]={2,4,6,8},*p=a,i;for(i=0;i<4;i++)a[i]=*p++;printf(tt%d
175",a[2]);}程序的输出结果是A8B2C4D6答案:D318有以下程序#includecharfun(char*c){if(*c〈='Z'&&*c>='A')*c='A'-'a';returm*c;)main()(chars[81],*p=s;gets(s);while(*p){*P=fun(p);putchar(*p);p++;printf(t
176,);}}若从键盘输入OPENTHEDOORv回车>,程序的输出结果是
177AOPENTHEDOORBOpenTheDoorCOPENtHEdOORDopenthedoor答案:D319有以下程序#includemain()(chara=,H,;a=(a>=,A,&&a<=,Z,)?(a+32):a;printf(M%C
178n,a);}程序的输出结果是AHBACaDh答案:D320有以下程序#includeintf(intx);main(){inta,b=0;for(a=0;a<3;a+=1){b+=f(a);putchar(7V+b);}intf(intx){returnx*x+1;程序的输出结果是ABDIBBCFCABE答案:A321设有定义:intx[2][3];则以下关于二维数组x的叙述错误的是Ax[0]和x[1]是数组名,分别代表一个地址常量B元素x[0]可以看作是由三个整形元素组成的一位数组C数组x可以看作是由x[0]和x[1]两个元素组成的一位数组D可以用x[0尸0;的形式为数组所有元素赋初值0答案:D322设p是指针变量,语句p=NULL;等价于Ap=0Bp='0'Cp=""Dp="答案:A323有以下程序#includemain()(intaD={10,20,30,40}l*p=a,i;for(i=0;i<=3;i++){a[i]=*p;P++;}printf("%d
179'1,a[2]);)程序的输出结果是A20B10C40D30DBCD答案:D324有以下程序include#defineN3viodfun(inta[][N],intb。){inti,j;for(i=0;i180b[i]=a[i][0];for(j=1;j181");)程序的输出结果是A3,6,9B1,3,5C3,5,7D2,4,8答案:A325设有定义:chars[81];inti=1;以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是Ado{scanf(u%c",&s[i]);}while(sp++]!='
182');s[i]=>\01;Bgets(s);Cwhile((s[i++]=getchar())!='
183');s[i]='\0';Dscanf(u%s",s);答案:D326设有定义:charpD={'T,'2';3'},*q=p;以下不能计算出一个char型数据所占字节数的表达式是Asizeof(p[0])Bsizeof(*p)Csizeof(char)Dsizeof(p)答案:D327有以下程序#include#includemain(){charstrO[20]={"One*world",nOne*Dream!"},*p=str[1];printf(u%d,",strlen(p));printf("%s
184",p);}程序的输出结果是A9,One*Dream!B9,One*worldC10,One*worldD10,One*Dream!答案:D328有以下程序#includemain(){charsO=n012xy\08s34f4w2M;intl,n=O;for(i=0;s[i]!=0;i++)if(s[j]>=10,&&s[i]<=,9,)n++;printf(H%d
185H,n);)程序的输出结果是A8B7C3D0答案:C329有以下程序#includefun(intx,inty){staticintm=0,i=2;i+=m+1;m=i+x+y;returnm;)main(){intj=1,m=1,k;k=fung,m);printfC%d,",k);
186k=funG,m):printf("%d
187”,k);}程序的输出结果是A11,5B5,11C11,11D5,5答案:B330在C语言中,只有在使用时才占用内存单元的变量,其存储类型是Aauto和staticBstatic和registerCextern和registerDauto和register答案:D331以下语句中错误的是Achar*ss[6];ss[1]="right?";Bchar*ss[]={"right?”};Ccharss[6][20];ss[1]="right?";Dcharss[][20]={"right?”};答案:C332以下不能将s所指字符串正确复制到t所指存储空间的是Ado{*t++=*s++;}while(*s);Bfor(i=0,j=0;t[i++]=sO++];);Cwhile(*t=*s){t++;s++;}Dfor(i=0;t[i]=sO];i++):答案:A333有以下程序#includevoidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;)main(){char*s1=nabc",*s2="123”;swap(s1,s2);printf(tt%s,%s
188",s1,s2);)程序执行后的输出结果是A321,cbaBabc,123C123,abcD1bc,a23答案:D334、有以下函数intfun(char*x,char*y)
189{intn=0;while((*x==*y)&&*x!='\0*){x++;y++;n++;}returnn;}函数的功能是A统计x和y所指字符串中相同的字符个数B将y所指字符串赋给想、所指存储空间C统计x和y所指字符串中最前面连续相同的字符个数D查找x和y所指字符串中是否有‘\0'答案:C334)有以下函数yuan.c«yuan”int7funO{staticintx=l;x=t=2;returnx;}mainO{inti,s=l;foi(i=l;i-H-)s=*=fun();printfs);}程序运行后的输出结果是Oa)io64yuan.eemyuan.corOc)oOd)30标准答案:D3C6)在一个C源程序文件中所定义的全局变量,具作用域为Oa)由具体定义位置和extern说明来决定范图Ob)所在文件的全部范围Oc)所在函数的全部范困Od)所在程序的全部范围标准答案:A
190337)有以下程序段热曲称yuan.comfloaty;charname[50];scanf(*%2d%f%s*,&j,&y,naae);当执行上述程序段,从隆盘上输入555667777abe后,y的值为Oa)55566.0yuan.comyuan.comOb)566.0Oc)566777.0Od)7777.0标准答案:B3㈤)下列语句组中,正确的是Oa)chajf1[7];s=*0ly»pic*';Ob)chars[7];5={"Olympic"};OC)char*s;s={"Olympic"};Od)char*s;s="01ympic”;标准答案:D3f9)有以下函数一般鹳⑷while(*t++);}return(t-s);该函数的功能是Oa)计算s所指字符串的长度Ob)比较两个字符串的大小Oc)将s所指字符串复制到字符串,中Od)计苴s所指字符串占用内存字节的个数标准答案:D第0)有以下程序(注:字符a的ASCII码值为97)#叼嘶后tdio.h>yuan.rnainO{char*s={'abc"};do{printf*s%10);++s;}while(*s);程序运行后的输出结果是98C99097ab7878XJZ.ABcD>>>>/\/\/X标准答案:C
191341)设有如下函数定义yuan.coint'f^untintk){if(kyuan.cintf(mtn);main。{inta=3,s;s=f(a);s=s+f(a);printfC%d
192*,s);)intf(intn){staticinta=l-n+=a++;yfldn-returnn;)程序运行后的输出结果是OA)9Ob)8yuan.eomyuan©Oc)ioOd)?标准答案:a343)设有定义:c安打依嬴yuan.o以下选项中能够使c正确指向一个字符串的是OA)c=getchar();OB)*c=*string*;Oc)scanf(*%s*,c);OD)charstr[堆";c=str;标准答案:D344)若有定义语句:c诲hF[10]=*1234567\0\0*;则strlen(s)的值是OA)9Ob)7Oc)ioOd)8标准答案:B
193345)有以下程序XJ/X/\J*\/ABcD?22C\/X/\/\/\标准答案:D346)有以下程序(与对出devoidfun说明:字母A的ASCII码值是65)(char*s)yuan.com{while(*s){if(*s%2)printf*s);s++;}mainO{chara[径州TE';fun(a);printf(*
194*);}程序运行后的输出结果是0A)Ob)Oc)Od)YEyuan.comBTBYYTyuan.com标准答案:A347)有以下程序::霁需£stdio.h》staticintx=l;x+=l;returnx;mainOyuan.c«ninti,s=l;for(i=l;i<=5;i-H-)s+=fun();printfs);)Oa)Ob)Oc)Od)程序运行后的输出结果是yudn.com12011621yuan.com―双嘶#include〈string,h)main。{charp[20]={7Jb"q[]=*abcSMXabcde";strcat(p,r);strcpy(p+strlen(q),q);printf(*%d
195*,strlen(p));程序运行后的输出结果是
196343)有以下程序#includ^{Xstdio.h>voidYunZ(charcharb)printf(*%c%c”,a,b);)chara='A',b=,B,;voidfunl0_,「,.yuan.coma—l,b='D',|mainO(funl();printf("%c%c*,a,b);为4忻即;'F*);}程序的运行结果是Oa)cdabOb)abefOc)ABCDyuan.comC>D)CDEF标准答案:D349)以下选项中正确的语句组是Oa)chajfu啾10],s="BOOK!”;C)B)char*s;s="BOOK!”;Oc)chars[];s="BOOK!”;C)D)char*s;s={*BOOK!*};标准答案:B350,若有定义语句:char*s1="0K”,*s2="ok";以下选项中,能够输出“OK”的语句是Aif(strcmp(s1,s2)==1)puts(s1);Bif(strcmp(s1,s2)!=1)puts(s2);Cif(strcmp(s1,s2)==0)puts(s1);Dif(strcmp(s1,s2)!=0)puts(s1);标准答案:D351,有以下程序#includevoidfun(char**p)(++pprintf("%s
197Vp);}main()(char*a[]={,,Morning^^,^^Afternoon","Evening","Night"};fun(a);)程序的运行结果是A)AfternoonB)EveningC)MorningD)Afternoon标准答案:D352,有以下程序,程序中库函数islower(ch)用以判断ch中的字母是否为小写字母
198#include#includevoidfun(char*p)inti=0;while(p[i])(if(p[i]==,*&&islower(p[i-1]))p[i-1]=p[i-1]-'a'+'A';i++;})main()(chars1[100]=MabcdEFGf;fun(s1);printf(H%s
199n,s1);)程序运行后的输出结果是cdEFg!cdEFG!AAbCdEFg!BabCaBcDEFG!Dab标准答案:C353,有以下程序#includeIntf(intx)(inty;if(x==0||x==1)return(3);y=x*x-f(x-2);returny;}main()(intz;z=f(3);printf(u%d
200H,z);}程序的运行结果是A9B8C0标准答案:D354,有以下程序#includeintfun(intx[],intn){staticintsum=o,i;for(i=0;i201inta[]={1,2,3,4,5},bO={6,7,8,9},s=0;s=fun(a,5)+fun(b,4);printf("%d
202”,s);)程序执行后的输出结果是A60B55C50D45标准答案A355,下程序(strcat函数用以链接两个字符串)#include#includemain()(chara[20]=,,ABCD\0EFG\0,,,BD=,,IJKn;strcat(a,b);printf(tt%s
203",a))程序运行后的输出结果是A标]356,ABCDIJK手案A下程序段BABCDE\0FG\0IJKCEFGIJKDUKcharname[20];intnumscanf(wname=%snum=%d^^,name&num);当执行上述程序段,并从键盘输入:name=Lilinum=1001v回车〉后,name的值为DLilinum=ALiliBname=Lilinum=1001Cname=Lili标准答案A357,有以下程序#includename()(charch[]=MuvwxyzM,*pc;pc=ch;peintf(u%c
204n,*(pc+5));)程序运行后的输出结果是C元素ch[5]的地址D0AzB字符y的地址标准答案A358,有以下程序#includemain()chars[]={H012xyn};inti,n=0;for(i=0;s[i]!=0;i++);if(s[i]>=,a,&&s[i]<=,z,);printf("%d
205”,n);程序运行后的输出结果是A2B0C3D5
206标准答案A359,有以下程序#includeintfun(intn)(if(n==1)return1;elsereturn(n+fun(n-1));}main()(intx;scanf(w%dM,&n);x=fun(x);printf(H%d
207n,x);{执行程序时,给变量x输入10,程序的输出结果是A65B54标准答案D360,有以下程序#includeintf(intm){staticintn==0;n+=m;returnn;)main(){intn=0;printf("%d”,f(++n));printf("%d
208",f(++n));}程序运行后的输出结果是c45D55A1,1B3,3标准答案D361,以下选项中正确的语句组是C2,3D1,2Achar*s;s={uBOOK!");Bchars[];s=HBOOK!n;Cchar*s;s="BOOK!”;标准答案C362,若是以下定义和语句#includechars1[10]="abcd!",*s2="
209123\\B;printf(u%d%d
210",strlen(s1),strlen(s2));则输出结果是Dchars[10];s=ttBOOK!";A107B55标准答案B363,有以下程序#includevoidfun1(char*p)c58D105
211char*pq=pwhile(*q!=\O')((*q)++;q++;))main()(charaO={"Program"},*p;p=&a[3];fun1(p);printf("%s
212",a);)程序执行后的输出结果是AProgsbnBProhsbnCProgramDPrphsbn标准答案B、364,有以下函数intaaa(shar*s){char*t=s;while(*t++);t-;return(t-s);)以下关于aaa函数功能叙述正确的是A将串s复制到串tB求字符串s所占字节数C求字符串s的长度D比较两个串的大小标准答案C365,有以下程序#includeintfun(inta,intb);{if(b==O)returna;elsereturn(fun(—a,—b));)main(){printf(u%d
213",fun(4,2));}程序的运行结果是A1B4C2D3标准答案C366,以下选项中叙述错误的是AC程序函数中定义的自动变量,系统不自动赋确定的初值BC程序函数的形参不可以说明为static型变量CC程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值D在C程序的同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内标准答案C367,以下能正确定义字符串的语句是AcharstrO={'\064'};Bcharstr="\x43";
214Ccharstr[]=\0;Dcharstr=;标准答案C368,以下关于字符串的叙述中正确的是A两个字符串中的字符个数相同时才能进行字符串大小的比较BC语言中有字符串类型的常量和变量C空串比空格打头的字符串小D可以用关系运算符对字符串的大小进行比较标准答案C369,有以下程序#includevoidfun(char*a,char*b){while(*a=='*')a++;while(*b=*a){b++;a++:)}main(){char*s="*****a*b****”,t[80];fun(s,t);puts(t);)程序的运行结果是Aa*b****Bab标准答案A370,下列函数的功能是voidfun(char*a,char*b)(while(*b=*a)!='\0’){a++;b++;})A将a所指字符串和b所指字符串进行比较C使指针b指向a所指字符串标准答案D371,有以下程序#includeintfun(intx)(intp;if(x==0||x==1)return(3);p=x-fun(x-2);returnp;)main()(printf(u%d
215",fun(7));)执行后的输出结果是A3B0标准答案D372,有以下程序#includeC*****a*bDa*bB检查a和b所指字符串中是否有‘\0'D将a所指字符串赋给a所指空间C7D2
216intfun(){staticintx=1;x*=2;returnx;)main(){inti,s=1;for(i=1;i<=2;i++)s=fun();printf(tt%d
217",s);}程序运行后的输出结果A1B4C8D0标准答案B373,若要求从键盘读入含有空格字符的字符串,应该使用函数Agetchar()标准答案D374,设有如下程序段Bget()Cscanf()Dgets()#includechars[20]^Beijing;*p;p=s;则执行p=s;语句后,以下叙述正确的是A数组s中的内容和指针变量p中的内容相同BCs和p都是指针变量D标准答案D375,有以下程序s数组中元素的个数和p所指字符串长度相等可以用*p表示s[0]#includemain(){charsO=Mabcden;s+=2;printf("%d
218”,s[O]);)执行后的结果是A输出字符c的ASCII码C输出字符c标准答案D376,有以下程序B输出字符a的ASCII码D程序出错#include#includevoidfun(char*s[],intn){char*t;inti,j;for(i=0;istrlen(s[j])){t=s[i];s[i]=s[j];s[j]=t;})main(){char*ss[]={"bcc”「bbcc”,“xy","aaaacc”,“aabcc"};fun(ss,5);printf(H%s,%s
219w,ss[0],ss[4]);}程序的运行结果是
220Aaaaacc.xyBbcc.aabccCaabcc,bccD标准答案D377,有以下程序#includeinta=4;intf(intn){intt=0;staticinta=5;if(n%2){inta=6;t+=a++;}else{inta=7;t+=a++;}returnt+a++;}main(){ints=a,i=0;for(;i<2;i++)s+=f(i);printf("%d
221”,s);}程序运行后的输出结果是A32B36标准答案c378,有以下程序#includeintf(intn){intt=0;staticinta=5;if(n%2){inta=6;t+=a++;}else{inta=7;t+=a++;}returnt+a++;)main(){ints=a,i=0;for(;i<2;i++)s+=f(i);printf(H%d
222M,s);}程序运行后的输出结果是C28A32B36标准答案D379,以下正确的字符串常量是C28DAOlympicGamesB"\\\"标准答案DC'abc'D380,下列选项中,能够满足“只要字符串s1等于字符串s2,Aif(strcmp(s2,s1)==0)ST;Cif(s1==s2)ST;标准答案A381,有以下程序#includeint则执行STS”要求的是Bif(strcpy(s2,s1)==0)Dif(s1-s2==0)ST;xy.aaaacc24ST;D24fun(charpQ[10]){intn=O,i;for(i=0;i<7;i++)if(p[i][O]==T)n++;returnn;
223}main(){charstrQ[10]={“Mon”,“TueT'Wed”,“Thu",“Fri",“Sat",“Sun”};printf(,,%d
224,,,fun(str));)程序执行后的输出结果是A0B2标准答案B382有以下程序#includevoidfun(char*t,char*s){while(*t!=0)t++;While((*t++=*s++)!=O);}main(){charss[10=Maccn,aa[10]=,,bbxxyyn;fun(ss,aa);printf(4,%s,%s
225M,ss,aa);}程序的运行结果是Aacc.bbxxyyBaccxyy.bbxxyy标准答案D383,有以下程序#include#includevoidfun(char*w,intm){chars,*p1,*p2;p=w;p2=w+m-1;while(p1intb=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);}printf(M
226");
227)程序运行后的输出结果是A1028B1016标准答案A385,若有以下程序#includemain(){inti,j=0;chara[]="Howareyou!";for(i=0;a[i];i++)if(a[i]!=")aO++]=a[i];aO]='\0';printf('%s
228”,a);)则程序的输出结果是AHay!BHowareyou!标准答案D386,如有以下程序#includechar*a=MyouM;charb[]=,,WelcomeyoutoChina!";main(){inti,j=0;char*p;for(i=0;b[i]!='\0';i++){if(*a==b[i]){P=a;forO=i;*p!='\0';i++){if(*p!=b[j])break;P++;)if(*p=='\0')break;)}Printf(M%s",&b[i]);}则输出结果是AChina!BmeyoutoChina!标准答案D387,若有以下程序#includemain(){chara[20],b[]=nTheskyisblue.";inti;for(i=0;i<7;i++)scanf(M%cM,&b[i]);gets(a);printf(u%s%s
229w,a,b);}执行时若输入:(其中〈Enter)表示回车符)Figflowerisred.则输出结果是C810D1012CHowareyouDHowareyou!CtoChina!DyoutoChina!
230Awerisred.figfloisblue.BFigflowerisred.Theskyisblue.Cwerisred,FigfloDwerisred.Theskyisblue.标准答案A388,若有以下程序#includemain(){charw[20],a[5][10]={匕bcdef',"ghijkl”,“mnopq”,"rstuv”,“wxyz"};intp[6][2]={{0,1},{1,5},{0,0},{0,2},{1,4},{4,4}},i;for(i=0;i<6;i++)w[i]=a[p[i][0]][p[i][i]];puts(w);)则程序的输出结果是AblackBcatisCckbdlDababj标准答案A389,若有以下程序#includevoidf(intx){if(x>=10){printf(u%d-",x%10);f(x/10);elseprintf(u%d",x);)main(){intz=123456;f(z);)则程序的输出结果是A6-5-4-3-2-1B1-2-3-4-5-6-C6-5-4-3-2-1-D1-2-3-4-5-6标准答案A390若有以下程序#includeinta=2;intf(intm){staticintn;n=0;n++;a++;returnn+m+a;}main(){intk;for(k=0;k<4;k++)printf(M%d,w,f(k));}则程序输出结果是A4,7,10,13,B4,6,8,10,C3,5,7,9,D4,5,6,7,标准答案B391,若有以下程序#includemain(){intI,j=0;chara[]=nHowareyou!w,b[10];for(i=0;a[i];i++)if(a[i]=='')bO++]=a[i+];b[j]='O';
231printf("%s
232",b);}则程序的输出结果是AHay!BHowareyou!CHowareyouDay标准答案D392,若有以下程序#includechar*a=MyouH,b[]-'welcome#you#to#China!M;main(){inti,j=0;char*p;for(i=0;b[i]!=AO*;i++){if(*a==b[i]){P=&b[i];for(j=O;a0]!='\0';j++){if(aO]!=*p)break;P++;}if(aO]==*\0*)break;}printf(H%s
233M,p);})则程序的输出结果是A#you#to#China!Bme#you#to#China!C#China!D#to#China!标准答案D393,若有以下程序#includemain(){chara[20],b[]=,,Theskyisblue.";inti;for(i=0;i<10;i++)scanf('*%cn,&a[i]);a[i]='\0';gets(b);printf(u%s%s
234n,a,b);)执行时若输入:Figflowerisred.v回车〉则输出结果是AFigflowerisred.isblue.BFigflowerisCFigflowerisred.DFigflowerisred.标准答案D394,若有以下程序#includemain(){charw[20尸dogs”,a[5][10]={"abcdefVghijkr,"mnopq”,"rstuv”,"wxyz."};inti,j,k;for(i=0;w[i];i++)
235{forQ=0;j<5;j++)break;break;{for(k=0;aO][k];k++)if(w[i]==a|j][k])if(w[i]==a[j][k])}Printf(B%d,%d,"m})则程序的输出结果是A6,7,6,7,6,7,6,7,标准答案B395若有以下程序#includeIntf(inta[],intn){if(n>1){intt;t=f(a,n-1);returnt>a[n-1]?}elsej,k);B0,3,2,2,1,0,3,1,C5,6,5,6,5,6,5,6,D1,4,3,3,2,1,4,2,returna[0])main(){inta[]={8,2,9,1,3,6,4,7.5};Pnntf("%d
236",f(a,9));}则程序的输出结果是A5B1标准答案D39ti)若有以下程序«in<^u^,ryuan.3nintfant*){staticintn=0;inta=2;n++a++,returnn+m+a;}mainOfor(k=0;k,,,inV短x)yt{in,P;if(x=0IIx==l)return(3);p=x-fun(x-2);return(p):}main().……、{printfC%d\ii^^funC9));}
237程序运行后的输出结果是Oa)4Ob)9°C)5yuan3nyuOD)7标准答案:D398)以下选项中,能正确进行字符串贼值的是Oa)chaxuap[51={'B','匕'WyahE'、};Ob)char*s="ABCDE”;OC)chars[4][5]={"ABODE"};C*D)char*s;gets(s);标准答案:B399)有以下程手*in伙明工薪{/。.也yuan-yuvoidfun(char**p){inti;for(i=O;i<4;i++)printf(^^ptij);}main(){char*s[6j={"ABCD","EFGH","lJKL","MNOP","QRST”「UVfX'};}fun(s);Pixntf(-
238-),yuan—程序运行君的看出结果是Oa)abcdefghijklOb)abcdefghijklinop°C)杷Iguan.comyuanxomyuOd)ABCD标准答案:B400)以下fun函数的功能是将形参s所指字符串内容颠倒过来voidfun(char*s){inti,j,k;for(i=0,j=strlen(s);ivoidfun(char*p,intn){charb[6]=uab=bcden;inti;for(i=0,p=b;i239)main(){chara[6]=MABCDEw;fun(a,5);printf(H%s
240M,a);}程序运行后的输出结果是D)ABCDEA)abodeB)EDCBAC)edcba标准答案:D402)有以下程序#includefun(inta,intb)(intstaticm=0,i=2;i=i+m+1;m=i+a+b;returnm;}main(){intk=4,m=1,p;p=fun(k,m);printf("%d,”,p);p=fun(k,m);printf(tt%d
241",p);}程序运行后的输出结果是D)7,16A)8,8B)8,17C)7,17标准答案:B403)有以下程序#includeintfun(chars口)(char*p=s;while(*p!=0)p++;return(p-s);)main(){printf("%d
242”,fun("OABCDEF"));)程序运行后的输出结果是D)7A)1B)0C)6标准答案:D404)若有以下程序段charstr[4][12]={Maa,,/,bbb,,,,,cccccM;,d,,},*strp[4];inti;for(i=0;i<4;i++)strp[i]=str[i];不能正确引用字符串的选项是D)strp[O]A)*strpB)strp[3]C)strp标准答案:C405)有以下程序
243#include#include
244voidfun(char*s)(chara[10];strcpy(a,"STRING");s=a;)nain()(char*p="PROGRAM";fun(p);printf(u%s
245",p);)程序运行后的输出结果是(此处口代表空格)D)PROGRAMA)STRING□□□C)STRING□口口口标准答案:D406;有以下程序#iicludevoidfun(intn,int*s)(intf;if(n==1)*s=n+1;else(fun(n-1,&f);*s=f;))nain()(intx=0:fun(4,&x);printf("%d
246",x);}程序运行后的输出结果是A)3B)2C)1D)4标准答案:B407)有以下程序^includenain()(charc[2][5]={,,6938',,"8254',},*p[2];inti,j,s=O;for(i=0;i<2;i++)p[i]=c[i];for(i=0;K2;i++)for(j=0;p[i皿>0;j+=2)s=1O*s+p[i]0]-'O';
247printf(M%d
248",s);}程序运行后的输出结果是A)9284B)6982C)9824D)6385标准答案:D408)有以下程序#includevoidfun(int*s)(staticintj=0;dos[j]+=s[j+1];while(++j<2);)main()(inti,a[10]={1,2,3,4,5};for(i=1;i<3;i++)fun(a);for(i=1;i<5;i++)printf(B%d",a[i]);printf(u
249");}程序运行后的输出结果是A)5795B)35745C)34756D)5745标准答案:D409)下面选项中的程序段,没有编译错误的是A)char*sp,s[10];sp="Hello";A)charstr1[10]="computer",str2=str1;B)charmark[];mark=^^PROGRAM^^;D)char*sp,s[10];s="Hello";标准答案:A410)以下叙述中正确的是A)字符串常量“str1”的类型是:字符串数据类型B)有定义语句:charstr1[]="str1”;数组str1将包含4个元素C)字符数组的每个元素可存放一个字符,并且最后一个元素必须是'\0'字符D)下面的语句用赋初值方式来定义字符串,其中''0'是必须的charstr1U={'s','t',T','1','\O'};标准答案:D411)以下叙述中正确的是A)char*ca[3]={"A是不合语法的B)charca[3][5]=fA","B",“CCC”};是不合语法的C)字符串数组,是指数组中的每个元素都是一个存放字符串的一维数组D)charca[][5]={"A",“B",“CCC”};;是不合语法的标准答案:D412)以下叙述中正确的是A)函数调用strlen(s);会返回字符串s实际占用内存的大小(以字节为单位)B)当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间C)两个字符串可以用关系运算符进行大小比较D)C语言本身没有提供对字符串进行整体操作的运算符标准答案:D413)以下叙述中正确的是A)函数体中的语句不能出现对自己的调用B)如果函数带有参数,就不能调用自己C)函数名代表函数的入口地址D)所有函
250数均不能接受函数名作为实参传入标准答案:C414)以下叙述中正确的是A)只要是用户定义的标识符,都有一个有效的作用域B)局部变量不能被说明为staticC)只有在函数内部定义的变量才是局部变量D)只有全局变量才有自己的作用域,函数中的局部变量没有作用域标准答案:A415)以下叙述中正确的是A)不能用字符串常量对字符数组名进行整体赋值操作B)字符串常量“Hell。”会被隐含处理成一个无名字符型数组,它有5个元素C)char*str;str="Hello";与charstr[];str="Hello";效果是一样的D)charstr[7]="string!”;在语法上是合法的,运行也是安全的标准答案:416)以下叙述中正确的是A)对于字符串常量"string!”;系统已自动在最后加入了'\0'字符,表示串结尾B)对于一维字符数组,不能使用字符串常量来赋初值C)语句charstr[1O]="string!”;和charstr[1O]={"string!”};并不等价D)在语句charstr[10]="string!";中,数组str的的大小等于字符串的长度标准答案:A417)设有定义charstrO="Hello”;则语句printf(u%d%d",sizeof(strj,strlen(str));的输出结果是A)66B)65056D)55标准答案:B418)在32位编译器上,设有定义char*str1="Hello”,str2[]="Hello”;则以下语句printf("%d%d",sizeof(str1),sizeof(str2));的输出结果是A)56B)45066D)55标准答案:B419)以下叙述中正确的是A)任何情况下都不能用函数名作为实参B)简单递归不需要明确的结束递归的条件C)函数的递归调用不需要额外开销,所以效率很高D)函数既可以直接调用自己,也可以间接调用自己标准答案:D420)以下叙述中正确的是A)在复合语句中不能定义变量B)对于变量而言,“定义”和“说明”这两个实际上同一个意思C)函数的形式参数不属于局部变量D)全局变量的存储类别可以是静态类标准答案:D421)设有定义语句:char*aa[a]={"abcd","ABCD");则以下叙述正确的是A)aa是指针变量,它指向含有两个元素的字符型数组
251B)aa数组的值分别是字符串“abed”和“ABCD”C)aa数组的两个元素只能存放含有4个字符的一维数组的首地址D)aa⑼存放字符串“abed”的首地址标准答案:D422)有以下程序#includeintfun(char*s){char*p=s;while(*P!=0)p++;return(p=s);}main(){printf(u%d
252n,fun(ugoodbye!M));)程序的输出结果是A)8B)7C)0D)6标准答案:A423)有以下程序#includeintfun(intn){inta;if(n==1)return1;a=n+fun(n-1);return(a);)main(){printf(M%d
253",fun(5));}程序的输出结果是A)9B)14C)10D)15标准答案:D424)有以下程序#includeintd=1;{intd=5;d+=p++;p「intf("%d”,d);}main(){inta=3;fun(a);d+=a++;printf(a%d
254",d);)程序的输出结果是A)96B)85084D)94标准答案:C425)有以下程序#includeintfun(inta){intb=0;
255staticmtc=3;a=(c++,b++);return(a);}main(){inta=2,i,k;for(i=0;i<2;i++)k=fun(a++);printf(H%d
256M,k);)程序的输出结果是A)4B)0C)1D)2标准答案:B426)有以下程序#includemain(){charc[2][5]=>,6934,,,,,8254,,},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=c[i];for(i=0;i<2;i++)for(j=0;p[i][j]>0&&p[i]D]<='9,;j+=2)s=10*s+p[i][j]-'0';printf(u%d
257",s);程序的输出结果是A)69825B)6385C)693825D)63825标准答案:B427)有以下程序(strcpy为字符串复制函数,#include#includemain(){chara[10]=>,abc,,,b[10]=M012M,c[10]=Mxyzn;strcpy(a+1,b+2);puts(strcat(a,c+1));}程序的输出结果是A)a2yzB)a12xyz标准答案:A428)以下选项中,没有编译错误的是有以下程序#include程序的输出结果是A)charstr1[5]="passw,str2[6],str2=str1;C)char标准答案:C429)有以下程序#includemain(){char*s=w12134";intk=0,a=0;while(s[k+1]){k++;strcat为字符串连接函数)C)12yzD)bc2yzB)charstr4[];str4=,,helloworld”;D)charname[10];name=,,chinan;if(k%2==0){a=a+(s[k]-,0,+1);
258continue;}a=a+(s[k]・'O');}printf(Hk=%da=%d
259",k,a);}程序的输出结果是A)k=4a=12B)k=6a=11C)k=3a=14D)k=5a=15标准答案:A430)有以下程序#includemain(){chara[5][10]={“one",''two",,''three"“foW',”five"};inti,j;chart;for(i=0;i<2;i++)forQ=i+1;j<5;j++)if(a[i][O]>a[j][O]){t=a[i][O];a[i][O]=aD][OJ;a[j][O]=t;}puts(a[1]);)程序的输出结果是A)twoB)owoC)fwoD)fix标准答案:C431)有以下程序#includeinta=1,b=2;voidfun1(inta,intb){printf(,4%d%d”,a,b);}voidfun2(){a=3;b=4;}main(){fun1(5,6);fun2();printf("%d%d
260n,a,b);)程序运行后的输出结果是A)5612B)1256C)3456D)5634标准答案:D432)有以下程序#includevoidfunc(intn){staticintnum=1;num+=n;printf(H%dM,num);
261main(){func(3);func(4);printf("
262”);)程序运行后的输出结果是A)34B)48C)35标准答案:B433)下面结构体的定义语句中,错误的是A)structord{intx;inty;intz}structorda;C)struct{intx;inty;intz;}a;标准答案:A434)有以下程序#includetypedefstruct{intb,p;}A;voidf(Ac)/*注意:c结构变量名*/main(){inti;Aa={1,2};f(a);printf(u%d,%d
263",a.b,a.p);}程序运行后的输出结果是A)2,4B)1,4C)标准答案:D435)以下叙述中正确的是A)#include必须放在C程序的开头C)预处理命令行必须位于C源程序的起始位置标准答案:D436)有以下程序#include#includeintfun(intn){int*p;p=(int*)malloc(sizeof(int));*p=n;return*p;}main(){inta;a=fun(10);printf(H%d
264,,sa+fun(10));)程序运行后的输出结果是A)10B)出错标准答案:C437)有以下程序#includemain(){unsignedchara=8,c;c=a»3;\D)45B)structord{intx;inty;intz;}a;D)structord{intx;inty;intz;};structorda;2,3D)1,2B)C语言的预处理不能实现宏定义和条件编译的功能D)在C语言中,预处理命令行都以峰”开头C)20D)0
265printf(l'%d
266",c);)程序运行后的输出结果是A)16B)0C)32D)1标准答案:D438)读取二进制文件的函数调用形式为:fread(buffer,size,count,fp);其中buffer代表的是A)一个文件指针,指向待读取的文件B)一个内存块的首地址,代表读入数据存放的地址C)一个内存块的字节数D)一个整型变量,代表待读取的数据的字节数标准答案:B439)以下叙述中错误的是A)用typedef可以为各种类型起别名,但不能为变量起别名B)用typedef可以新的类型明后,原有类型名仍有效C)可以通过typedef增加新的类型D)可以用typedef将已存在的类型用一个新的名字来代表标准答案:C440)有以下程序#includestructS{inta,b;}data[2]={10,100,20,200);main(){structSp=data[1];printf(,'%d
267,,,++(p,a));}程序运行后的输出结果是A)10B)20C)11D)21标准答案:D441)有以下程序#include#definePT3.5;#defineS(x)PT*x*x;main(){inta=1,b=2;printf(,,%4.1f
268,1,S(a+b));}程序运行后的输出结果是A)31.5B)程序有错无输出结果C)14.0D)7.5标准答案:B442)有以下程序#includemain(){unsignedchara=2,b=4,c=5,d;d=a|b;d&=c;printf("%d
269",d);}程序运行后的输出结果是A)3B)6C)5D)4标准答案:D443)有以下程序#include#include
270main(){int*a,*b=2,*c;a=b=bc=(int*)malloc(sizeof(int));*a=1;*b=2,*c=3;a=b;printf("%d1%d,%d
271",*a,*b,*c);)程序运行后的输出结果是A)2,2,3B)1,1,3C)1,2,3D)3,3,3标准答案:D444)以下叙述中正确的是A)当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失B)在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个数据C)打开一个己存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖D)C语言中的文件是流式文件,因此只能顺序存取数据标准答案:A445)设有定义:structcomplex{intreal,unreal;}data1={1,8},data2;则以下赋值语句中错误的是A)data2=data1;B)data2.real=data1.unreal;C)data2.real=data1.realD)data2=(2,6);标准答案:D446)有以下程序#includestructS{intn;inta[20];};voidf(structS*p){intfor(i=0;i〈p国n・1;i++)for(j=i+1;jpEa[j]){t=p区pSa[i]=pH]a[j];pEa[j]=t;})main(){inti;structSs={10,{2,3,1,6,8,7,5,4,10,9}};f(&s);for(i=0;i#includetypedefstruct{charname[9];charsex;intscore[2];}STU;
272STUf(STUa){STUb={“Zhao",'m',85,90};
273inti;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i<2;i++)a.score[i]=b.score[i];returna;}main(){STUc={uQianw/f,95,92},d;d=f(c);printf(u%s,%c,%dt%dH,cl.name,d.sex,d.score[0],d.score[1]);printf(u%s,%c,%d,%d
274M,c.name,c.sex,cscore[0],c.score[1]);}程序运行后的输出结果是A)Qian,f,95,92,Qian,f,95,92C)Qian,f,95,92,Zhao,m,85,90标准答案:B448)以下关于宏的叙述中正确的是A)宏替换没有数据类型限制C)宏名必须用大写字母表示标准答案:A449)设有以下语句inta=1,b=2,c;c=a(b«2);执行后,c的值为A)7B)8标准答案:D450、有以下程序#includemain(){FILE*fp;inta[10]={1,2,3},i,n;fp=fopen(ud1.dat","w'');for(i=0;i<3;i++)fprintf(fp,"%d",a[i]);fprintf(fp,"
275");fclose(fp);fp=fopen("dl.dat","r");fclose(fp);printf(0%d
276",n);)程序运行的结果是A、12300B、123标准答案:BB)Zhao,m,85,90,Qian,f,95,92D)Qian,f,95,92,Zhao,m,85,90B)宏调用比函数调用耗费时间D)宏定义必须位于源程序中所有语句之前C)6D)9C、321D、1451、以下关于typedef的叙述错误的是()A、用typedef可以为各种类型说明一个姓名,但不能用来为变量说明一个新名B、用typedef为类型说明一个新名,通常可以拯救程序的可读性C、typedef只是将已存在的类型用一个新的名字来代表D、用typedef可以增加新类型标准答案:D452、程序中已构成如下图所示的不带点结点的单向链表结构,指针变量s、p、q均已正确定义,并用于指向链表结点,指针变量s总是作为头指针指向链表的第一个结点。
277NULL若有以下程序段q=s;s=s->next;p=s;while(p->next)p=p->next;p->next=q;q->next=NULL;该程序段实现的功能是A)尾结点成为首结点B)删除尾结点标准答案:C453、有以下程序#include#detmeS(x)4*(x)*x+lmain(){intk=5,j=2:printfCW\S(k+j))}程序运行后的输出结果是A、143B、28标准答案:A454、若有以下程序段intr=8printfl'*%d
278\r»1);输出结果是A、4B、2答案A455、以下叙述中错误的是A、fXvrite函数用于以二进制形式输出数据到文件C、gets函数用于从终端读入字符串答案:D456、有以卜程序#includemain(){FILE*pfchar*sl=''china",*s2="Beijing”;pf=fbpcn("abc.dat”Jwb+”);fwTite(**s2J,l,pf);rewind(pf);fwritc(sl,5,l,pf);fclose(pD;}以上程序执行后abcdat文件的内容是A)ChinaBeijingB)BeijingChina答案:D457、有以下结构体说明、变量定义和时值语句StructSTD{charname[10J;inta^;Charsex;C)首结点成为尾结点D)删除首结点C、33D、197C、16D、8B、fpuls函数用于把字符串输出到文件D、getchar函数用于从磁盘文件读入字符C)ChinaD)Chinang
279}s[5],*ps;Ps=&s[OJ;则以下scanf函数调用语句有错误的是B)scanf(%c,,,&(ps->sex));D)scanf("%d”,ps->age);B)可用S定义结构体变量D)可用T定义结构体变量A)scanf("%d”,&s[O].age);C)scanf(t4%s,\s[O].name);标准答案:D458、若有以下语句typedefstructS{intg;charh;}T;以下叙述中正确的是A)T是structS类型的变量C)S是srurct类型的变量标准答案:d459、#include#includeStructA(inta;charb[10]doublec;};structAf(stuctAt);mian()(structAa={1001,"zhangda”,1098.0};printfC4%d,%s,%6.1f
280”,a.a,a.b,a.c);}structAf(strucrAt)(t.a=1002;strcpy(t.b,,,ChangRongM);t.c=1202.0returnt;)程序运行后的输出结果是A、1002,ZhangDa,1202.0B、1001,ChangRong,1098.0C、1001,Zhangda,1098.0D、1002,ChangRong,1202.0标准答案:D460、设有宏定义:#defineIsDIV(k,n)((k%n==)?l:0)且变量m已正确定义并赋值,则宏调用:IsDIV(m,5)&&IsDIV(m,7)为真时所要表达的是A)判断m被5和7整除是否都余1B)判断m是否能被5和7整除C)判断m是否能被5或者7整除D)判断m被5或者7整除是否余1标准答案A461、有以下程序#includemain()
281inta=l,b=2,c=3,x;x=(aAb)&c;printf(tt%d
282,\x);)程序运行的结果是A、0标准答案:D462、有以下程序#includemain()B、1C、2D、3FILE*fp;intk,n,a[6]={1,2,3,4,5,6};fp=fopen(Hd2.dat,,,,,wn);fprintf(fp,n%d%d
283M,a[O],a[1],a[2]);fprintf(fp,"%d%d
284",a[3],a[4],a[5]);fclose(fp)fp=fopen(Md2.datn,T);fscanf(fp,M%d%dM,&k,&n);printf(tt%d%d
285",k,n);fclose(fp);)程序运行后的结果是D、123456Ax14B、12C、1234标准答案:D463、没有以下语句tepedefstructTT{charc;inta[4];}CIN;则下面叙述正确的是A)可以用TT定义结构体变量B)可以用CIN定义结构体变量C)CIN是structTT类型的变量D)TT是struct类型的变量标准答案B464、有以下程序#includestructord{intx,y;}叫2]={1,2,3,4};main()(structord*p=dt;printf(t4%d,“,++(p->x));printf("%d
286,++(p->x));)程序运行后的输出结果是D、1,2A、2,3B、3,4C、4,1标准答案A465、#include#defineSUB(a)(a)-(a)
287main(){inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf(tt%d
288",d);)程序运行后输出的结果是A、10B、0C、-12D-20标准答案D466、有以下程序#includemain(){inta=2,b;b=a«2;printf(tt%d
289",b);)程序运行后的输出结果是A、6B、2C>4D、8标准答案:D467、下列关于c语言文件的叙述中正确的是A、文件由结构序列组成,可以构成二进制文件或者文本文件B、文件由一系列数据依次排列组成,只能构成二进制文件C、文件由字符序列组成,其类型只能是文本文件D、文件由数据序列组成,可以构成二进制文件或者文本文件标准答案:D468、有一下程序#includemain(){FILE*fp;inta[10]={1,2,3,0,0},l;fp=fopen("d2.dat】'wb");fwrite(a,sizeof(int),5,fp);fwrite(a,sizeof(int),5,fp);fclose(fp)fp=fopen("d2.dat",“rb”);fread(a,sizeof(int),10,fp);fclose(fp);for(i=o;i<10;i++)printf(“%d,%a[i]);)运行结果是A、1,2,3,1,2,3,0,0,0,0,B、1,2,3,0,0,0,0,0,0,0,0,C、123,0,0,0,0,123,0,0,0,0D、1,2,3,0,0,1,2,3,0,0,标准答案:D469、有以下程序structst{intx,int*y;}*pt;inta[]={l,2},b[]={3,4};structstc[2]={10,a,20,b};pt=c;以下选项中表达式的值为11的是A)pt->xB)(pt++)->xC)++pt->xD)*pt->y标准答案:c470、有以下程序#includestructS{intn;inta[20];};voidf(int*a,intn)(intifor(i=0;i#includetypedefstruct{charname[9];charsex;floatscore[2];}STU;voidf(STUa)(STUb={“zhao",'m',85.0,90.0};inti;strcpy(a.name,b.name);a.sex=b.sex;a.for(i=0;i<2;i++)a.score[i]=b.score[i];
290)main()(STUc={HQianH,T,95.0,92.0};f(c);printf(tt%s,%c,%2.0f,%2.0f
291",c.name,c.sex,c.score[0],c.score[1]);}程序的运行结果是A、Qian,m,85,90B、Zhao,m,85,90C、Qian,f,95,92D、Zhao,f,95,92标准答案:C472、有以下程序#include
292#definef(x)x*x*xmain()(inta=3,s,t;s=f(a+1);t=f(a+1);printf(H%d,%d
293M,s,t);)程序运行后的输出结果是A、10,64B、64,64C、10,10D、64,10标准答案:A473、有以下程序#includemain()(chara=4;printf(tt%d
294",a=a«1);)程序的运行结果是A、8B、4C、40D、16标准答案:A474、设文件指针fp已定义,执行语句fp=fopen("fi©',"w");后,以下针对文本文件file操作叙述的选项中正确的是A、写操作结束后可以从头开始读B、可以随意读和写C、只能写不能读D、可以再原有内容后追加写标准答案:C475、以下结构体类型说明和变量定义中正确的是A、struct{intn;charc;}REC;RECt1,t2;B、typedefstruct{intn;charc;}REC;RECt1,t2;C^structREC{intn;charc;};RECt1,t2;D>typedefstructREC;{intn=0;charc=*A,;}t1,t2;标准答案:B476、假定已建立以下链表结构,且指针p和q已指向如图所示的结点:
295datanextbcTPTq则以下选项中可将q所指结点从链表中删除并释放该结点的语句组是A、p=q->next;free(q);B、(*p).next=(*q).next;free(p);B、p->next=q->next;free(q);D、p=q;free(q);标准答案:C477、有以下程序#include#includestructA(inta;charb[10];doublec;);viodf(structAt);main()(StructAa={1001,,,ZhangDa,>,1098.0};f(a);printf(tt%d,%s,%6.1f
296M,a.a,a.b,a.c);}viodf(structAt)(t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;}程序运行后的输出结果是:A、1002,ChangRong,1202.0B、1002,ZhangDa,1202.0C、1001,ChangRong,1098.0D、1001,ChangRong,1098.0标准答案:D478、有以下程序#include#defineN5#defineMN+1#definef(x)(x+M)main(){inti1,i2;i1=f(2);i2=f(1+1)printf("%d%d
297M,i1J2);}程序的运行结果是A、127B、117C、1111D、1212标准答案:B479)有以下程序#include
298main()(inta=5,b=1,t;t=(a«2)|b;printf(H%d
299;t);}程序运行后的输出结果是A、11B、21C、6D、1标准答案:B480)设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为:A、0B、NULLC、非0值D、标准答案:C481)有以下定义和语句structworkers{intnum;charname[20];charc;struct{intday;intmonth;intyear;}s;};structworkersw,*pw;pw=&w;能给w中year成员赋1980的语句是A、pw->year=1980;B、*pw.year=1980;C、w.s.year=1980;D、w.year=1980;标准答案:C482)以下叙述错误的是A、可以通过typedef增加新的类型B、用typedef定义新的类型名后,原有类型名仍有效C、可以用typedef将已存在的类型用一个新的名字来代表D、用typedef可以为各个类型其别名,但不能为变量起别名标准答案:A483)有以下程序#include<.stdio.h>structtt{intx;structtt*y;}*p;structtta[4]={20,a+1,15,a+2,30,a+317,a};main(){inti;P=a;for(i+1;i<=2;i++){printfC%d,H,p->x);p=p->y;})
300程序的运行结果是A、30,17B、20,30C、15,30D、20,15标准答案:10484、有以下程序#includemain(){structSTU{charname[9];charsex;doublescore[2];};structSTUa={“Zhao",'m'85.0,90.0},b={“QianTf',95.0,92.0};b=a;printf(u%s,%c,%2.0f
301H,b.name,b.sex,b.score[0],b.score[1]);)程序的运行结果是A、Qiao,m,85,90B、Zhao,m,85,90C、Qian,f,95,92D、Zhao,f,95,92标准答案:B485)以下叙述错误的是A、C程序对预处理命令行的处理是在程序执行的过程中进行的B、在程序中凡是以“#"开始的语句行都是预处理令行C、#defineMAX是合法的宏定义命令行D、预处理命令行的最后不能以分号表示结束标准答案:A486)有以下程序#includemain(){FILE*ff=fopen("filea.txt",'w');fprintf(f,"abcM);fclose(f);)若文本文件filea.txt中原有内容为:hello,则运行以上程序后,文件filea.txt中的内容为:A、abcB、helloabcC、abchelloD、abclo标准答案:A487)设有定义:struct{charmark[12];intnum1;doublenum2;}t1,t2;若变量均已正确赋初值,则以下语句中错误的是A)t2,mark=t1.mark;B)t2,num2=t1.num2;C)t1=t2D)t2.num1=t1.num1;
302标准答案:A488)有以下程序#include#includestructA{inta;charb[10];doublec;};voidf(structAt)main(){structAa:{1001,"ZhangDa”,1098.0};f(a);printf(M%d,%s,%6.1f
303M,aaa.b,a.c);)voidf(structAt){t.a=1002;strcpy(t.b,MChangRong");t.c=1202.0;)程序运行后的输出结果是A、1001,changRong,1098.0B>1001,ZhaoDa,1098.0C>1002,ZhaoDa,1202.0D、1002,ChangRongo1202.0标准答案:B489)有以下程序#include#includetypedefstruct{charname[9];charsex;floatscore[2];}STU;STUf(STUa){STUb={“Zhao",'m',85.0,90.0};inti;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i<2;i++)a.score[i]=b.score[i];returna;)main(){STUc={uQianM,T,95.0,92.0},d:d=f(c);printf(M%s,%c,%2.0f,%2.0f
304,,Jd.name,d.sex,d.score[1]);)程序的运行结果是A、Qian,m,85,90B、Zhao,f,95,92C、Qian,f,95.92D、Zhao,m,85,90标准答案:D490)若程序中有宏定义行:#definedN100则以下叙述中正确的是A、在运行时用100替换标识符NB、宏定义行中定义了标识符N的值为整数100C、上述宏定义实现将100赋值给标识符ND、在编译程序对C源程序进行预处理时用100替换标识符N标准答案:D491)若变量已正确定义,则以下语句的输出结果是s=32:sA=32;printf(H%dM,s);A、0
305B、32C、1D、-1标准答案:A492)有以下程序#incluedemain(){FILE*fp:charstr[10];fp=fopen(Mmyfile.dar,HwM);fputs(uabc\fp);fclose(fp):fp=fopen(ttmyfile.datn,wa+H);fprintf(fp,%d,28);rewind(fp);fscanf(fp,“%s",str);puts(str);fclose(fp);)程序运行后的输出结果是A、因类型不一致而出错B、abcC、28cD、abc28标准答案:D493)若以下程序#include#defineS(x)x*x#defineT(x)S(x)*S(x)main(){intk=5,j=2;printf(M%d,%d
306n,S(k+j),T(k+j))}则程序的输出结果是A、17,37B、17,289C、49,289D、49、2401标准答案:A494)有以下程序#include#include#includestructstu{char*name,gender;intscore;};main(){structstua={NULL,'m',290},b;a.name=(char*)malloc(10);
307strcpy(a.name,nZhaoM);b=a;b.gender=T;b.score=350;strcpy(b.name,wQian”)printf(H%s,%c,%dH,a.name,a.gender,a.score);printf(H%s,%c,%d
308,,,b.name,b.gender,b.score);程序运行后的输出结果是A)Qian,m,290,Qian,f,350B)Zhao,m,290,Qian,f,350C)Zhao,m,290,Zhao,f,350D)Qian,f,350,Qian,f,350标准答案:A495)有以下程序#include#include#includetypestructstu{char*name,gender;intscore;}STU;voidf(char*p){p=(char*)malloc(10);strcpy(p,"Qian");}main(){STUa={NULL,'m',290},b;a.name=(char*)malloc(10);strcpy(a.name,nZhaoM);b=a;f(b.name);b.gender=T;b.score=350;printf("%s,%c,%d,,,a.name,a.gender,a.score);printf(4,%s,%c,%d
309,,,b.name,b.gender,b.score);)}程序运行后的输出结果是A)Zhao,m,290,Qian,f,350B)Qian,f,350,Qian,f,350C)Zhao,m,290,Zhao,f,350D)Qian,m,290Qian,f,350标准答案:C496)若有定义typedefint*T;Ta[10];则a的定义与下面哪个语句等价A)int*a[10];B)inta[10];C)int(*a)[10];D)int*a;
310标准答案:A497)如有以下程序:#includemain(){intc;c=10A5;printf("%d
311”,c);)则程序的输出结果是A、5B、105C、10000D.15标准答案:D498、若有以下程序#includemain(){FILE*fp;inti;a[6]={1,2,3,4,5,6),k;fp=fopen("data.dat",“w+”);for(i=0;i<6;i++){fseek(fp,0L,0);fprintf(fp,w%d
312w,a[i]);}rewind(fp);fscanf(fp,%d,&k);fclose(fp);printf("%d
313”,k);}则程序的输出结果是A、6B、1C、123456D、21标准答案:A499、若有以下程序#include#defineS(x)(x)*(x)defineT(x)S(x)/S(x)+1main(){intk=3,j=2;printf(tt%d,%d
314",S(k+j),T(k+j));}则程序的输出结果是A、11,12B、11,2C、25,2D、25,26标准答案:D500、若有以下程序#includetypedefstructstu{charname[10],gender;intscore;}STU;
315viodf(STUa„STUb){b=a;printf(H%s,%c,%d,M,b.name,b.gender.b.score);}main(){STUa={MZhaoM,,m,,290},b={,,Qian,,,T,350};f(a,b);printf(u%s,%c,%d
316M,b.name,b.gender,b.score);}则程序的输出结果是A、Qiao,f,350,Qian,f,350B、Zhao,m,290,Zhao,m,290C>Zhao,m,290,Qian,f,350D、Zhao,m,290,Zhao,f,350标准答案:C501、若有以下程序#include#includetypedefstructstu{charname[10],gender;intscore;}STU;viodf(char*p){strcpy(p,"Qian");}main(){STUa={“Zhao",'m',290},b;b=a;f(b.name);b.gender=T;b.score=350;printf(H%s,%c,%d,,,Ja.name,a.gender,a.score);printf(u%s,%c,%d
317H,b.name,b.gender,b.score);}则程序的输出结果是A、Zhao,m,290,Zhao,f,350B、Zhao,m,290,Zhao,m,290C>Qian,f,350,Qian,f,350D、Zhao,m,290,Qian,f,350标准答案:D502)若有定义typedefcharT[10];T*a;上述定义中的a的类型与下面选项中完全相同的是A、char*a:B、char(*a)[10];C^chara[10];D、char*a[10];标准答案:D503)若有以下程序#includemain(){intc;c=13|5;printfe%d
318M,c);)则程序的输出结
319果是A、13B、5C、18D、15标准答案:A504、若有以下程序#includemain(){FILE*fp;inti,a[6]={1,2,3,4,5,6},k;fp=fopen(udata.dar,Mw+bM);for(i=0;i<6;i++){fseek(fp,0L,0);fwrite(&a[5-i],sizeof(int),1,fp);}rewinf(fp);fread(&k,sizeof(int),1,fp);fclose(fp);printfC%d",k);}则程序的输出结果是A、6B、21C、123456D、1标准答案:D505)为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是指向结点的指针域),则在【】处应填入的选项是structlink{chardata;[]}node;nextdataA>link*next;B、structlink*next;C>structlinknext;D、linknext;标准答案:B506)以下结构体说明和变量定义中,正确的是A、typedefstructabc{intn;doublem;}ABC;B、structABC{intn;doublem;}structABCx,y;C、structabc{intn:doublem;)structabcx,y;D、structabc{intn;doublem;)abcx,y;标准答案:A
320507)有以下程序#include#includeviodfun(int*p1,int*p2,int*s){s=(int*)malloc(sizeof(int));*s=*p1+*(p2++);}main(){inta[2]={1,2},b[2]={10,20),*s=a;fun(a,b,s);printf("%d
321”,*s);}程序运行后的输出结果是A、2B、10C、11D、1标准答案:D508)以下程序依次把终端输入的字符存放到f文件中,用#作为结束输入的标志,则在横线处应填入#includemain(){FILE*fp;charch;fp=fopen(ufnamen,Hwn);while((ch=getchar())!=,#,)fputc();fclose(fp);}A、ch,Hfname^^B、ch,fpC、chD、fp,ch标准答案:B509、有以下程序#include#defineN2#defineMN+1
322#defineNUM(M+1)*M/2main(){printf("%d
323”,NUM);}程序运行后的输出结果是A、4B、6C、9D、8标准答案:D510、有以下程序#includemain(){inti=0;i=~i;printf("%d
324”,i);}程序运行后的输出结果是A、1B、8C、0D、-1标准答案:D511)有以下程序段int*p;p=malloc(sizeof(int));若要求使p指向一个int的动态存储单元,在横线处应填入的是A)int*B)intC)(*int)D)(int*)标准答案:D512)有以下程序#include#defineSUB(X,Y)(X+1)*Ymain(){inta=3,b=4;printf(tt%d
325w,SUB(a++,b++));\)程序运行后的输出结果是A)25B)16C)12D)20标准答案:B513、有以下程序#includemain()(charc[2][5]={“6938”,”8254}*p[2];inti,j,s=o;for(i=0;i<2;i++)p[i]=c[i];for(i=0;i<2;i++)for0=O;p[i]0]>O;j+=2)s=10*s+p[i]D]-<0,;printf(Hd%
326,s);-no-
327程序运行后输出的结果是D、6938C)p->nD)++(p-->n)A、4528B、9824C、6385标准答案:C514)若有以下程序段structst{intn;structst*next;};structsta[3]={5,&a[1],7,&a[2],9,'\0'},*p;p=&a[O];则以下选项中值为6的表达式是A)(*p).nB)p->n++标准答案:D515)有以下程序#includemain(){inti=1;printf("%d
328.,i");\)程序运行后的输出结果是A)7B)-1C)1D)0标准答案:D516)以下程序用来统计文件中字符的个数(函数feof用以检查文件是否结束,结束时返回非零)#includemain(){FILE*fp;longnum=0;fp=fopen("fname.dar,"r");while(){fgerc(fp);num++;}printf(,'num=%d
329,,,num);fclose(fp);}程序运行后的输出结果是A)!feof(fp)B)feof(fp)C)feof(fp)==NULLD)feof(fp)==0标准答案:B517)下面选项中关于编译预处理的叙述正确的是A)预处理命令行不能出现在程序的最后一行B)凡是以#号开头的行,都被称为编译预处理命令行C)预处理命令行必须使用分号结尾D)预处理命令行的作用域是到最近的函数结束处标准答案:B518)以下叙述中正确的是A)使用typedef说明新类型名时,其格式是:typedef新类型名原类型名B)在使用typedef改变原新类型的名称后,只能使用新的类型名C)使用typedef说明新类型名时,后面不能加分号D)在程序中,允许用typedef来说明一种新的类型名标准答案:D519)以下叙述中正确的是A)结构体类型中各个成分的类型必须是一致的B)在定义结构体类型时,编译程序就为它分配了内存空间C)结构体类型中的成分只能是C语言中预先定义的基本数据类型D)一个结构体类型可以由多个称为成员(或域)的成分组成
330标准答案:D520)以下叙述中正确的是A)元素为结构体类型的数组,只能在声明过结构体类型之后,单独进行定义B)结构体类型中的各个成分均不能是数组或指针C)使用typedef定义新类型名后,新类型名与原类型名实际上是等价的D)结构体类型的变量,不能在声明结构体类型组成时一起定义标准答案:C521下面选项中关于位运算叙述中正确的是A)右移运算时,高位总是补0B)位运算的对象只能是整型或字符型数据C)左移运算的结果总是原操作数据2倍D)位运算符都需要两个操作数标准答案:B522)下面选项中关于“文件指针”概念的叙述正确的是A)文件指针就是文件位置指针,表示当前读写数据的位置B)把文件指针传给fscaf函数,就可以向文本文件中写入任意的字符C)文件指针指向文件在计算机中的存储位置D)文件指针是程序中用FILE定义的指针变量标准答案:D523)以下叙述中正确的是A)在包含文件中,不得再包含其他文件B)#include命令行不能出现在程序文件的中间C)虽然包含文件被修改了,包含该文件的源程序也可以不重新进行编译和连接D)在一个程序中,允许使用任意数量的#include命令行标准答案:D524)以下叙述中正确的是A)函数的返回值不能结构体类型B)结构体数组不能作为参数传给函数C)在调用函数时,可以将结构体变量作为实参传给函数D)函数的返回值不能是结构体指针类型标准答案:C525)以下叙述中正确的是A)结构体变量的地址不能作为实参传给函数B)结构体数组名不能作为实参传给函数C)即使是同类型的结构体变量,也不能进行整体赋值D)结构体中可以含有指向本结构体的指针成员标准答案:D526)设有如下的说明和定义struct{inta;char*s;}x,*p=&x;x,a=4;x,s="hello";以下叙述中正确的是A)语句++p—>a;的效果是使成员a增1B)语句*p—>s++;等价于(*p)—>s++;C)(p++y->a与p++—>a都是合语法的表达式,但二者不等价D)语句++p—>a;的效果是使p增1
331标准答案:A527)下面关于位运算符的叙述,正确的是A)||表示“按位或”的运算B)〜表示“按位异或”的运算C)#表示“按位异或”的运算D)&表示“按位与”的运算标准答案:D528)下面关于“EOF”的叙述,正确的是A)EOF的值等于0B)EOF是在库函数文件中定义的符号常量C)对于文本文件,fgetc函数读入最后一个字符时,返回值是EOFD)文本文件和二进制文件都可以用EOF作为文件结束标志标准答案:B529)有以下程序#include#defineSQR(X)X*Xmain()(inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("%d
332”,a);}程序运行后的输出结果是D)0D)4A)1B)9C)10标准答案:A530)有以下程序#includemain(){charx=2,y=2,z;z=(y«1)&(x»1);printf(a%d
333",z);}程序运行后的输出结果是A)0B)1C)8标准答案:A531>有以下程序#includestructS{inta;intb;};main(){structSa,*p=&a;a.a=99;printf("%d
334")程序要求输出结构体重成员a数据,以下不能填入横线处的内容是A、*p.a标准答案:AB、p->aC、(*p).aDa.a532、有以下程序
335#include#includevoidfun(double*p1,double*p2,double*s){doublea[2]={1.1,2.2,},b[2]={10.0,20.0},*s=a;fun(a,b,s);printf(H%5.2f
336M,*s);)程序输出结果是A、1.10B、21.10C、12.10D、11.10正确答案:AcNULL4533、若已建立以下链表结构,指针p、s分别指向如图所示结点则不能海.a就错希b—p=(*p'ext;(*s).next;(*p).next=s;C、p=p->i..t;s—>next=p->next;p->next=sD、p=p->next;s->next=p;p->next=s标准答案D534、若fp定义为指向某文件的指针,且没有读到该文件的末尾,则C语言函数feof(fp)的函数返回值是A、EOFB、0C、非0D、-1标准答案B535,有以下程序#include#includevoidfun(int*p1,int*p2,int*s){s=(int*)calloc(1,sizeof(int));*s=*p1,+*p2;free(s);)main(){inta[2]={1,2},b[2]={40.50},*q=a;fun(a,b,q);printf("%
337"Jq);)程序运行后的输出结果是A、41B、0C、42D、1标准答案:D536、有以下
338程序#includestructSTU{charname[9];charsex;floatscore[2];};voidf(structSTUaQ){structSTUb={“zhao",'m',85,90};a[1]=b;)main(){structSTUc[2]={fqian",,f,95,92},{',Sun",,m,,98,99}};f(c)printf(,,%s,%c,%d,%d",c.[O]name,c[0].sex,c[0].score[0],c[0].score[1]);printf("%s,%c,%dI%d
339",,c.[O]name,c[0].sex,c[0].score[0],c[0].score[1]);程序的运行结果是A、Zhao,m,85,90,Qian,f,95,92B、Zhao,m,85,90,Sun,f,98,99C、Qian,f,95,92,Zhao,m,85,90D、Qian,f,95,92,Zhao,Sun,f,98,99标准答案:C537、以下叙述错误的是A、可以用typedef说明的新类型名来定义变量B、typedef说明的新类型名必须使用大写字母,否则会出编译错误C、月]typedef可以说明一种新的类型名D、typedef的作用是用一个新的标识符来代表已存在的类型名标准答案:B538、以下叙述错误的是A、函数的返回值类型不能是结构体类型,只能是简单类型B、函数可以返回指向结构体变量的指针C、可以通过指针变量来访问结构体变量的任何成员D、只要类型相同,结构体变量之间可以整体赋值正确答案:A539、若有定义语句intb=2;则表达式(b«2/(3||b)的值是A、4B、0C、2D、8标准答案:D540、有以下程序#indudemain()FILE*fp;inti,a[6]={1,2,3,4,5,6};fp=fopen("d2.dat,,,,,w+,');for(i=0;i<6;i++)fscanf(fp,"%d
340",a[i]);rewind(fp);
341for(i=0;i<6;i++)fscanf(fp,"%d",a[5-i]);fclose(fp);for(i=0;i<6;i++)fscanf(%d
342",a[i]);)程序运行后的结果是A、4,5,6,1,2,3,B,1,2,3,4,5,6,C6,5,4,3,2,1,D,1,2,3,3,2,1,标准答案:C