《C题库docC题库C题库doc题库》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
cthtmjdlnd1c语言程序的基本单位是ーA)程序行B)语句〇函数D)字符C12C语言程序的三种基本结构是ーA、顺序结构,选择结构,循环结构B、递归结构,循环结构,转移结构C、嵌套结构,递归结构,顺序结构D、循环结构,转移结构,顺序结构A13C语言规定,程序中各函数之间A)既允许直接递归调用也允许间接递归调用B)不允许直接递归调用也不允许间接递归调用0允许直接递归调用不允许间接递归调用D)不允许直接递归调用允许间接递归调用A14C语言中可处理的文件类型是()A)文本文件和数据文件B)文本文件和二进制文件0数据文件和二进制文件D)数据代码文件B15C语言可执行程序的开始执行点是()A)程序中第一条可执行语句B)程序中第一个函数0程序中的main函数D)包含文件中的第一个函数C16C语言提供的合法的数据类型关键字是A)doubleB)shortC)integerD)charB17c语言中,运算对象必须是整型数的运算符是A)%B)\〇%和'D)**A18C语言中函数返回值的类型是由()决定。A)return语句中的表达式类型B)调用函数的主调函数类型0调用函数时临时D)定义函数时所指定的函数类型D19C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为»A.该数组的长度。B.该数组的元素个数。D1
1cthtmjdlndc.该数组中各元素的值。D.该数组的首地址。10C语言中数组下标的下限是。A、1B、0C、视具体情况D、无固定下限B111C语言中提供的合法关键字是ーA、swithB、cherC、caseD、defaultD112c语言中文件的存取方式是。A、顺序存取B、随机存取C、顺序存取、随机存取均可D、顺序存取、随机存取均不可C113C语言中最简单的数据类型包括A)整型、实型、逻辑型B)整型、实型、字符型0整型、字符型、逻辑型D)整型、实型、逻辑型、字符型B114sizeof(float)是()A)ー种函数调用B)一个不合法的表示形式〇一个整型表达式D)ー个浮点表达式C115x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是A)inputx,y,z;B)scanf(*%d%d%d*,&x,&y,&z);C)scanf("%d%d%d”,x,y,z);D)read("%d%d%d”,&x,&y,&z);B116表达式:10!=9的值是A)trueB)非零值〇0D)1D117表示关系x<=y<=z的c语言表达式为A)(X<=Y)&&(Y<=Z)B)(X<=Y)AND(Y<=Z)C)(X<=Y<=Z)D)(X<=Y)&(Y<=Z)A118程序片段:在TC20中,inti-65536;printf("%d
2",i);的输出结果是ーA)65536B)0〇有语法错误,无输出结果D)-1B119当调用函数时,实参是一个数组名,则向函数传送的是ーA)数组的长度B)数组的首地址〇数组每ー个元素的地址D)数组每个元素中的值B120对嵌套子程序调用说法正确的是ー。A.外层子程序可以调用所有的内层子程序B.内层了程序只可以调用包含本身的外层子程序,不可以隔层调用C,外分程序必须能完全套住内分程序D.以上说法均不正确C121对于基类型相同的两个指针变量之间,不能进行的运算是A)
3thtmjdlnd24假定有以下变量定义:intk=7,x=12J则能使值为3的表达式是Ax%=(k%=5)Bx%=(k-k%5)Cx%=k-k%5D(x%=k)-(k%=5)D125请读程序片段(字符串内没有空格):printfC%d
4\strlen(*ATS
5O12\l\V));的输出结果是A)11B)1009D)8C126请选出合法的C语言赋值语句A)a=b=58B)i++;C)a=58,b=58D)k=int(a+b);B127若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是A)-3B)9〇-12D)6C128若int类型占两个字节,则以下语句输出为.intk=-l;printf("%d,u%
6”,k,k);A、・1,-1B、-1,65536C、-1,32768D、ー1,65535D129若变量a是int类型,并执行了语句:a='A'+1.6;,则正确的叙述是A)a的值是字符CB)a的值是浮点型0不允许字符型和浮点型相加D)a的值是字符‘A'的ASCII值加上1。D130若变量已正确说明为float类型,要通过语句scanf(飞f%f%f”,&a,&b,&c);给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:A)10B)10.0,22.0,33.02233〇10.0D)102222.033.033B131若要求在if后ー对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为A)a<>0B)!aC)a=0D)aB132若已定义x和y为double类型,则表达式:x=l,y=x+3/2的值是A)1B)202.0D)2.5C133若有定义:inta=8,b=5,c;,执行语句c=a/b+0.4;后,c的值为A)1.4B)1C)2.0D)2B134若有定义:intx,y;chara,b,c;并有以下输入数据(此处くCR>代表换行符,/u代表空格):lu2AuBuC则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是A)scanf(〃x=%dy+%d”,&x,&y);a=getchar();b=getchar();c=getchar();B)scanf("%d%d”,&x,&y);a=getchar();b=getchar();c=getchar();C)scanf("%d%d%c%c%c,&x,&y,&a,&b,&c);D)scanf(^%d%d%c%c%c%c%c%c:&x,&y,&a,&a,&b,&b,&c,&c);D135若有定义和语句:chars[10]:sゴabed";printfs);则结果是(以下u代表空格)A)输出abedB)输岀aC)输出abcduuuuuD)编译不通过D136若有以下程序段,intcl=l,c2=2,c3;c3=l.0/c2*cl;则执行后,c3中的值是A)0B)0.5C)1D)2A1
7cthtmjdlnd37若有以下定义:chara;intb;floatc;doubled;则表达式a*b+d-c值的类型为A)floatB)intC)charD)doubleD138若有以下定义和语句charcl二'b',c2='e';printf(z/%d,%c
8”,c2-cl,c2-'a'+"A");则输出结果是:A)2,MB)3,EC)2,ED)输出项与对应的格式控制不一致,输出结果不确定B139若有以下函数调用语句:fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是A)3B)4C)5D)6A140若执行下面的程序时从键盘上输入3和4I则输出是—A)14B)16〇!8D)20main(){inta,b,s;scanfC%d%d”,&a,&b);s二a;if(a5)printf("%d
9",x);elseprintf("%d
10”,x—);}B142若执行以下程序时从键盘上输入9,则输出结果是A)11B)10〇9D)8main(){intn;scanf("%d",&n);if(n++<10)printf("%d
11",n);elseprintfi'%d
12”,n—);)B143设a、b>c、d、n均为int型变量,且a二5、b=6>c二7、d=8>m二2、n=2,则逻辑表达式(m二a>b)&&(n二c>d)运算后,n的值为A)0B)!〇2D)3C144设inta=12,则执行完语句a+二a一二a*a后,a的值是A)552B)264〇144D)-264D145设intb=2;表达式(b»2)/(b»l)的值是A)0B)2〇4D)8A1
13thtmjdlnd46设a,b和c都是int型变量,且a=3,b=4,c=5,则下列表达式中,值为0的表达式是一一A)'a'&&'b'B)a<=bC)a11b+c&&b-cD)!((ay)+(y!=z)||(x+y)&&(y-z)A、0B、1C、-1D、6B149设X和y均为int型变量,则以下语句:x+=y;y=x-y;y=x-y;x-=y;的功能是A、把x和y按从大到小排列B、把x和y按从小到大排列C、无确定结果D、交换x和y中的值D150设有intx=ll;则表达式(x++*1/3)的值是A)3B)4〇11D)12A151设有如下的变量定义:inti=8,k,a,b;unsignedlongw=5;doublex=l,42,y=5.2;则以下符合C语言语法的表达式是A、a+=a-=(b=4)*(a=3)B、x%(-3);C、a=a*3=2D、y=float(i)A152设有如下定义:char*aa[2]={"abcd","ABCD"};则以下就法中正确的是A)aa数组成元素的值分别是"abed"和ABCD"B)aa是指针变量,它指向含有两个数组元素的字符型ー维数组0aa数组的两个元素分别存放的是含有4个字符的ー维字符数组的首地址D)aa数组的两个元素中各自存放了字符‘a‘和‘A’的地址D153设有如下定义:intx=10,y=3,z:则语句printf("%d
14",z=(x%y,x/y)):的输出结果是A)1B)0C)4D)3D154设有数组定义:chararray[]="China”;则数组array所占的空间为A)4个字节B)5个字节06个字节D)7个字节C155设有说明语句:chara='\72';则变量aA)包含1个字符B)包含2个字符〇包含3个字符D)说明不合法A156设有以下语句:intx=03,y=02,z=01;那么语句printf(线d”,x|y&、Z)的执行结果()。(A)1(B)2(〇3(D)0C157下列if语句中,不正确的是«A、if(x>y);B、if(x==y)x+=y;C、if(x!=y)scanf("%d",&x)elsex=l;D、if(xC158下列变量定义中合法的是A)short_a=l.le-l;B)doubleb=l+5e2.5;C)longdo=0xfdaL;D)float2_and=l-e-3;A159下列标识符中不合法的是ーA、s_nameB、_eC、foxD、3DSD160下列不正确的转义字符是A)'\\'B)'\"〇'074'D)'\0'C1
15cthtmjdlnd61请读程序:mainO{inta=l,b=2;printf(*%d
16*,a=a+l,a+6,b+2);}则上面程序的输出结果是ーA、2B、3C、4D、1A162请读程序:inti=0,j=O,a=6;if((++i>0)||(++j>O))a++;printf(*i=%d,j=%d,a=d%
17”,i,j,a);则上面程序的输出结果是ーA、i=O,j=O,a=6B、i=l,j=O,a=7C、i=l,j=l,a=6D、i=l,j=l,a=7B163下列程序段的输出结果为?inty=l;while(yーー);printf("y=%d
18”,y);A、y=-ly=OC、死循环D、y=9A164下列程序执行后的输出结果是A)3B)6〇9D)随机数mainO{inta[3][3],*p,i;p=&a[O][0];for(i=p;i<9;i++)p[i]=i+l;printf("%d
19*,a[l][2]);}B165下列程序执行后的输出结果是A)GB)H〇iD)JmainO{intx='f';printf("枇ゝn",'A'+(x-'a'+1));}A166下列程序执行后的输出结果是(小数点后只写一位)A)666.06.0B)666.76.7〇666.06.7D)666.76.0mainO{doubled;floatf;1ing1;inti;i=f=l=d=20/3;printf(*%d%ld%f%f
20”,i,1,f,d);}A167下列可作为c语言赋值语句的是A)x=3,y=5B)a=b=6C)i--;D)y=int(x);C168下列描述中不正确的是A)字符型数组中可以存放字符串C1
21thtmjdlndB)可以对字符型数组进行整体输入、输出0可以对整型数组进行整体输入、输出D)不能在赋值语句中通过赋值运算符”」对字符型数组进行整体赋值69下列说法中正确的是〇A、在switch语句中一定要使用break语句B、在switch语句中不一定要使用break语句C、break语句是switch语句的一部分D、break只能用于switch语句中B170下列运算符其优先级最高的是。A,「B、&&C、+D、=C171下面的DO循环中,ー共循环()次。M=5N=1DOWHiLEN<=MN=N+1ENDDO(A)1(B)6(C)4(D)5D172请读程序:#include
22",z);)则上面程序的输出结果是ーA、数据溢出B、9.3C、9.300000D、0C173请读程序:inta,b,c;a=(b=(c=10)+5)-5;printf("a,b,c=d%,d%,d%”,a,b,c);c=a=0;b=(a+10);printf("a,b,c=%d,d%,d%”,a,b,c);则上面程序的输出结果是ーA、a,b,c=0,10,10a,b,c=10,15,10B、a,b,c=10,15,10a,b,c=10,15,10C、a,b,c=10,15,10a,b,c=0,10,0D、a,b,c=10,15,10a,b,c=10,15,15C174写出下列语句执行后a,b的值。inta=6,b;b=(++b)+(a++);A、a=8,b=14B、a=7,b-8C、a=14,b=14D、a=8,b=8A1
23thtmjdlnd75请读程序:m=1234.123;printf=(*%-8.3f
24*,m);printf=(*%10.3f
25*,m);则上面程序的输出结果是ーA、1234.123001234.123B、1234.1231234.123C、1234.1231234.12300D、1234.123001234.123B176ー个C语言的语句至少应包ー个ーA、{}B、逗号C、分号D、什么不要C177ー个完整的C源程序是〇A、要由一个主函数(或)ー个以上的非主函数构成B、由一个且仅由一个主函数和零个以上(含零)的非主函数构成C、要由一个主函数和一个以上的非主函数构成D、由一个且只有一个主函数或多个非主函数构成B178已知整型变量a=13和b=6,则a&b的值是,a'b的值是ーA、413B>411C、111D、413B179以下for语句构成的循环执行了()次。#include
26cthtmjdlndprintf("紀、n",NULL);}(A)不确定的(B)0(C)-1(D)181在调用函数时,以下描述中正确的是.A、调用函数时,实参可以是表达式B、调用函数时,将为形参分配内存单元C、调用函数时,实参与形参的原型必须一致D、调用函数时,实参与形参可以用内存单元D182有以下程序段intk=0while(k=l)k++;while循环执行的次数是A)无限次B)有语法错,不能执行C)一次也不执行D)执行1次A183有以下函数charfun(char*p){returnp;}该函数的返回值是A)无确切的值B)形参p中存放的地址值0ー个临时存储单元的地址D)形参p自身的地址值B184语句printf("加、n”,12&012);的输出结果是ーA)12B)8〇6D)012B185语句:printf("知”,(a=2)&&(b=-2);的输出结果是ーA)无输出B)结果不确定0-1D)1D186运算完下面的C语言程序段以后,a的值是,b的值是c的值是〇intx=10,y=9;inta,b,c;a=(一x==y++)?-x:++y;b=x++;c=y;A、6913B、8711C、8910D、8710C187在c语言程序中,注释部分从哪开始,到哪结束?A、从(到)结束B、从REM开始无结束志标志C、无起始标志D、从/*开始,*/结束D188在c语言提供的合法的关键字是A)swicthB)cherC)CaseD)defaultD189在C语言中,不正确的int类型的常数是ーA)32768B)0〇037D)OxAFA190在C语言程序中,当while语句构成的循环中的条件为时,结束循环。A、0B、!C、trueD、非。A191在C语言中,函数的隐含存储类别是A)autoB)staticC)externD)无存储类别C192在C语言中,合法的长整型常数是A1
27cthtmjdlndA)0LB)4962710C)324562&D)216D93在C语言中,合法的字符常量是A)’ヽ084'B)'\x43,〇’ab'D)"、〇”B194在C语言中,若对函数类型未加明显式说明,则函数的隐含类型是ー类型A)voidB)doubleC)intD)charC195在c语言中,形参的缺省存储类是A)autoB)registerC)staticD)externA196在c语言中,要求运算数必须是整型的运算符是A)%B)/〇
28,){if(ch>:'A'&&chくニ'Z')ch=ch+32;C2
29cthtmjdlnd105整型变量x和y的值相等、且为非。值,则以下选项中,结果为零的表达式是A)x||yB)xyC)x&yD)xyD2106在以下定义中,正确的说明语句为ーA)intafa*]B)inta[3,4]C)inta[][]D)int*a[10]D2107执行下列程序时输入:123く空格>456く空格>789く回车》,输出结果是A)123,456,789B)1,456,789〇1,23,456,789D)1,23,456main(){chars[100];intc,i;scanf&c);scanf("%d",&i);scanf('%s”,s);printf(*%c,%d,%s
30”,c,i,s);}D2108执行下面程序片段的结果是intx=23;do{printf("%2d”,x—);}while(!x);A)打印出321B)打印出23C)不打印任何内容D)陷入死循环B2109在说明语句:int*f();中,标识符f代表的是ーA)一个用于指向整型数据的指针变量B)一个用于指向ー维数组的行指针0ー个用于指向函数的指针变量D)一个返回值为指针型的函数名D2no在下列选项中,不正确的赋值语句是ーA)++t;B)nl=(n2=(n3=0));C)k=i==j;D)a=b+c=l;D2111在C语言中,若需ー变量只在本文件中所有函数使用,则该变量的存储类别是A、externB、registerC、autoD、staticD2112在C语言程序中,当do-while语句构成的循环中的条件为时,结束循环。A、0B、1C、trueD、非0A2113在16位C编译系统上,若定义longa:,则能给a赋4000。的正确语句是A)a=20000+20000;B)a=4000*10;C)a=30000+10000;D)a=4000L*10L;D2114阅读以下程序:main(){intx;scanf("%d",&x);if(x―<5)printf("%d"'x);elseprintfx++);)程序运行后,如果从键盘上输人5,则输出结果是A)3B)4C)5D)6B2115运行以下程序后,如果从键盘上输入china#く回车),则输出结果为A、2,0B、5,0C、5,5D、2,5#includemain(){intvl=0,v2=0;C2
31thtmjdlndcharch;while((ch=getchar())!='#')switch(ch){case'aI:case'h':default:vl++;case’〇':v2++;}printf("%d,%d
32*,vl,v2);116请读程序:mainO(inta=l,b=2,c=3;++a;c+=++b;(intb=4,c;c=b*3;a+=c;printf("first:%d,%d,%d
33",a,b,c);a+=c;printf("Second:%d,%d,%d
34",a,b,c);)printf("third:%d,%d,%d
35",a,b,c);)该程序的输出是。A、first:12,4,12Second:26,4,12third:4,3,6B、first:14,4,12Second:26,12,12third:26,3,4C、first:14,4,12Second:26,4,12third:26,3,6D、first:14,4,12Second:26,6,12c2
36thtmjdlndthird:26,4,6117阅读程序:#include
37",p);printf(线x
38”,p+9);}该程序有两个printf语句,如果第一个printf语句输出的是194,则第二个printf语句的输出结果是A)203B)204〇!a4D)la6D2118与y=(x>O?l:xく〇?-1:0);的功能相同的if语句是A)if(x>0)y=l;B)if(x)elseif(x<0)y=-l;if(x>0)y=l;elsey=0;elseif(x<0)y=-l;elsey=0;C)y=-lD)y=0;if(x)if(x>=0)if(x>0)y=l;if(x>0)y=l;elseif(x==0)y=0;elsey=-l;elsey="l;A2119以下合法的赋值语句是A)x=y=100B)d-;C)x+y;D)c=int(a+b);B2120以下函数返回a所指数组中最小的值所在的下标值fun(int*a,intn){inti,j=0,p;P=j;for(i=j;i 39thtmjdlnd123以下所列的各函数首部中,正确的是A)voidplay(vara:integer,varb:integer)B)voidplay(inta,b)C)voidplay(inta,intb)D)subplay(aasinteger,basinteger)c2124以下叙述正确的是A)输入项可以是ー个实型常量,如:scanfC%r.3.5);B)只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf(*a=%d,b=%d);C)当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:scanf(线4.2f”,&f);D)当输入数据时,必须指明变量地址,例如:scanf(*%f.&f);c2125以下叙述正确的是A)do-while语句构成的循环不能用其它语句构成的循环来代替。B)do-while语句构成的循环只能用break语句退出。0用do-while语句构成的循环,在while后的表达式为非零时结束循环。1))用do-while语句构成的循环,在while后的表达式为零时结束循环。D2126以下叙述中不正确的是A)在C中,函数中的自动变量可以赋初值,每调用一次,赋ー次初值。B)在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。0在C中,外部变量的隐含类别是自动存储类别。D)在C中,函数形参可以说明为register变量。C2127以下叙述中不正确的是ーA)在不同的函数中可以使用相同名字的变量B)函数中的形式参数是局部变量〇在・个函数内定义的变量只在本函数范围内有效D)在ー个函数内的复合语句中定义的变量在本函数范围内有效D2128以下程序运行后,输出结果是A)1000B)10010000110D)10100main(){inty=18,i=0,j,a[8];do{a[i]=y%2;i++;y=y/2;}while(y>=l);for(j=i-l>0;j—)printf(%d*,a[j]);printf("h 40");}B2129以下程序运行后,如果从键盘上输入:bookく回车〉bookく空格X回车)B2 41thtmjdlnd则输出结果是A)*8B)#9C)#6D)*9ttincludemain(){charal[80],a2[80],*sl=al,*s2=a2;gets(si);gets(s2);if(!strcmp(sl,s2))printf(;elseprintf("#");printf("%d 42",strlen(strcat(si,s2)))}130以下程序运行后,输出结果是A)6385B)22C)33D)693825mainO{charch[2][5]=(*693*,*825*},*p[2];inti,j,s=Q;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=O;p[i][j]>-0*&&.p[i][j]<=,9>;j+=2)s=10*s+p[i][j]-,0,;printf("%d 43",s);)A2131以下程序运行后,输出结果是A)84B)99095D)44intd=l;fun(intp){intd=5;d+=p++;printf('%d",d);)mainO{inta=3;fun(a);d+=a++;printf("%d 44",d);}A2132以下程序执行后a的值是A)4B)1C)0D)运行时出错,a无定值main(){inta,k=4,m=6,*pl=&k,*p2=&m;C2 45thtmjdlnda=pl==&m;printf(*%d 46*,a);}133以下程序执行后sum的值是A)15B)140不确定D)0min(){inti,sum;for(i=l;iく6;i++)sum+=i;printf(〃%d 47”,sum);)c2134以下程序中,while循环的循环次数是mainO{inti=0;while(i<10){if(i 48cthtmjdlndC)typedefvlintv3;D)typedefv4:int;139以下选项中,不能正确赋值的是A)charsl[10];sl=*Ctest*;B)chars2ロ={'C','t','e','s','t'};C)chars3[20]=*Ctest*;D)char*s4="Ctest 49"A2140以下选项中,非法的字符常量是A)'\t'B),ヽ:17,C)"n"D),\xaa,C2141以下选项中不属于C语言的类型的是A)signedshortimtB)unsignedlongintC)unsignedintD)longshortD2142以下选项中合法的字符常量是A)"B"B),\010'C)68D)DB2143以下循环体的执行次数是A)3B)2〇1D)0main(){inti,j;for(i=0,j=l;i<=j+l;i+=2,j―)printf("%d 50",i);}C2144以下有4组用户标识符,其中合法的一组是A)forB)4dC)f2_G3D)ifC2145用十进制数表示表达式:12/012的运算结果是A)1B)0C)14D)12A2146有如下程序mainO{intx=23;do{printf("%d",x--);}while(!x);}该程序的执行结果是A)321B)230不输出任何内容D)陷入死循环B2147有如下程序intrune(inta,intb){return(a+b);}mainO{intx=2,y=5,z=8,r;r二func(func(x,y),z);printf("%\d 51",r);}D2 52thtmjdlnd该程序的输出的结果是A)12B)13C)14D)15148有如下程序longfib(intn){if(n>2)return(fib(n-l)+fib(n-2));elsereturn(2);)mainO{printf("紀、n”,fib(3));该程序的输出结果是A)2B)4〇6D)8B2149有如下程序main(){chars[]="ABCD",*p;for(p=s+l;pくs+4;p++)printf("%s 53",p);}该程序的输出结果是A)ABCDB)AC)BD)BCDBCDBCCDCDCDDDDD2150有如下程序mainO{inta[3][3]={{l,2},{3,4},{5,6}},i.j,s=0;for(i=l;i<3;i++)for(j=0;j 54",s);}该程序的输出结果是A)18B)19C)20D)21A2151有如下程序mainO{inta=2,b=-l,c=2;if(a 55",c);)该程序的输出结果是A)0B)1C)2D)3C2152有如下程序mainOC2 56cthtmjdlnd{inti,sum;for(i=l;iく=3;sum++)sum+=i;printf(〃%d 57”,sum);}该程序的执行结果是A)6B)3〇死循环D)0153有如下程序mainO{intn[5]={0,0,0},i,k=2;for(i=0;i 58",n[k]);}该程序的输出结果是A)不确定的值B)2〇1D)0D2154有如下程序mainO{intn=9;while(n>6){n--;printfn);}}该程序段的输岀结果是A)987B)876〇8765D)9876B2155有如下程序mainO{intx=l,a=0,b=0;switch(x){case0:b++;case1:a++case2:a++;b++)printf(*a=%d,b=%d 59*,a,b);}该程序的输出结果是A)a=2,b=lB)a=l,b=lC)a=l,b=0D)a=2,b=2A2156有如下程序mainO{inty=3,x=3,z=l;printf(*%d%d 60”,(++x,y++),z+2);}运行该程序的输出结果是A)34B)42043D)33D2157有如下程序段B2 61thtmjdlndint*p,a=10,b=lp=&a;a=*p+b;执行该程序段后,a的值为A)12B)11C)10D)编译出错158有如下说明inta[10]={l,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是A)*p+9B)♦(p+8)C)*p+二9D)p+8B2159请读程序:#include 62%d”,x«2y»l);}则上面程序的输出结果是ーA)-32B)0〇-32768D)-22A2160以下程序的输出结果是main(){inti,a[10];for(i=9;i>=0;i—)a[i]=10-i;printf("%d%d%d”,a[2],a[5],a[8]);)A)258B)741C)852D)369C2161以下程序的输出结果是main(){inti,k,a[10],p[3]:k=5;for(i=0;iく10;i++)a[i]=i;for(i=0;i<3;i++)p[i]=a[i*(i+l)];for(i=0;i<3;i++)k+=p[i]*2;printf("%d 63",k);}A)20B)21C)22D)23B2162以下程序的输出结果是main(){intnum=0;while(num<=2){num++;printf(zz%d 64,z,num);IB2 65A)1B)1C)1D)1222334163以下程序的输出结果是fut(int**s,intp[2][3]){**s=p[l][l];}main(){inta[2][3]={1,3,5,7,9,11},*p;p=(int*)malloc(sizeof(int));fut(&p,a);primtf("%d 66",*p);}A)1B)7C)9D)11c2164以下程序的输出结果是inta,b;voidfun(){a=100;b=200;}main(){inta=5,b=7;fun();printf(,z%d%d 67”,a,b);)A)100200B)57C)200100D)75B2165以下程序的输出结果是main(){inta=-l,b=4,k;k=(++a(0)&&!(b—(=0);printf("%d%d%d 68”,k,ab);}A)104B)103C)003D)004D2166以下程序的输出结果是mainO{charc='z';printf("枇”,c"25);)A)aB)ZC)z-25D)yA2167以下程序的输出结果是mainO{charst[20]="hello\0\t\\\";printf(%d%d 69",strlen(st),sizeof(st));}B2thtmjdlnd 70thtmjdlndA)99B)520C)1320D)2020168以下程序的输出结果是mainO{inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};printf("%d%d%d%d 71",a[0][3],a[l][2],a[2][l],a[3][0];}A)0650B)1470C)5430D)输出值不定A2169以下程序段的输出结果是charsロニ”\\141\141abe\t";printf("%d 72",strlen(s));A)9B)12C)13D)14A2170以下程序段的输出结果是inta=1234;printf("%2d 73*,a);A)12B)3401234D)提示出错、无结果C2171以下程序段的输出结果是intx=3;do{printf("%3d",x-=2);}while(!(--x));A)1B)3001-2D)死循环C2172以下程序段的执行结果是A)a=12y=12B)a=12y=12a=14y=16a=16y=28a=16y=20a=18y=24C)a=12y=12D)a=12y=12a=14y=26a=14y=44inta,y;a=10;y=。;do{a+=2;y+=a;printf("a=%dy二%d 74”,a,y);if(y>20)break;{while(a=14);B2 75thtmjdlnd.(39)若有以下调用语句,则不正确的fun函数的首部是A)voidfun(intm,intx口)B)voidfun(ints,inth[41])C)voidfun(intp,int*s)D)voidfun(intn,inta)main(){…inta[50],n;fun(n,&a[9]);}173以下程序段给数组所有的元素输入数据,请选择正确答案填入。#includeくstdio.h>mainO{inta[10],i=0;while(i<10)scanf("刎”,);।।।}A)a+(i++)B)&a[i+l]C)a+iD)&a[++i]A2174以下程序输出结果是A、7B、6C、5D、4main(){intm=5;if(m++>5print("%d 76”,m);elseprintf[%d 77”,m--);)B2175以下程序运行后,如果从键盘上输入ABCDEく回车),则输出结果为A、8B、7C、6D、5fuch(charstr[]{intnum=0;while(*(str+num)!=‘、0')num++;return(num);)main(){charstr[10],*p=str;gets(p);printf("%d 78",func(p));)D2176以下程序运行后,输出结果是2 79thtmjdlndA49.5B9.5C22.0D45.0#include#definePT5.5#difines(x)pt*x*xmain(){inta=l,b=2;print("%4.If/n”,S(a+b));}177以下程序运行后,输出结果是A8,15B8,16C8,17D8,8func(intm=O,i=2;i+=m+l;m=i+a+b;return(m);}main()|intk=4,m=l,p;p=func(k,m);printf("%d,p);p=func(k,m);printf('d 80”,p);)c2178以下程序运行后,输出结果是A、ABCDEFGB、CDGC、abcdefghD、abCDefGhmain(){siaticcharaロ="ABCDEFGH”,bロニ"abCDefGh”;char*pl,*p2;intk;pl=a;p2=b;for(k=0;k<=7;k++)if(*(pl+k)==*(p2+k))printf("%",*(pl+k));printf(" 81");}B2179以下程序运行后,输出结果是A、cdeB、字符c的ASCLL码值C,字符C的地址D、出错main(){char*s="abcde;C2 82thtmjdlnds+=2;print(*%ld 83”,s);}180以下程序的输出结果是main(){intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=l;for(i=0;i<3;i++)for(j=i;j<=i;j++)t=t+b[i][b[j][j]];printf(繼d 84",t);}A)3B)4C)1D)9B2181以下程序的输出结果是#defineM(x,y,z)x*y+zmainO{inta=l,b=2,c=3;printf("%d 85”,M(a+b,b+c,c+a));)A)19B)17C)15D)12D2182以下程序的输出结果是#includectype.hspace(char*str){inti,t;charts[81];for(i=0,t=O;str[i]!=\09;i+=2)if(!isspace(*str+i)&&(*(str+i)!='a'))ts[t++]=toupper(str[i]);ts[t]:‘、0';strcpy(str,ts);}mian(){chars[81]={*abcdefg"};space(s);puts(s);}A)abcdegB)bcdeC)ABCDED)BCDED2183以下程序的输出结果是A)B)#####〇*****D)*#*#*main(){inti;for(i=l;i<6;i++){if(i%2){printf(“井〃);continue;}printf("ボ’);)A2 86thtmjdlndprintf(' 87");}184以下程序的输出结果是A)0B)!〇2D)3mainO{intx=O.5;charz-a;printf("%d 88”,(x&l)&&(z<,z));}B2185以下程序的输出结果是A)-11B)01〇!0D)00main(){inta=-1,b=l,k;if((++a<0)&&!(b—<=0))printf(〃%d%d 89”,a,b);elseprintf("%d%d 90”,b,a);)C2186以下程序的输出结果是A)1B)2〇3D)4longfun(intn){longs;if(n==1||n==2)s=2;elses=n-fun(n'l);returns;)mainO{printf("%ld'n”,fun(3));}A2187以下程序的输出结果是A)1B)4〇7D)5#includeinta[3][3]={1,2,3,4,5,6,7,8,9,},*p;main(){p=(int*)malloc(sizeof(int));f(p,a);printf(z,%d 91”,*p);)f(int*s,intp[][3]){*s=p[l][1];}D2188以下程序的输出结果是A)10192B)9876〇!0990D)101091main(){intx=10,y=10,i;D2 92thtmjdlndfor(i=0;x>8;y=++i)printf(*%d,%d”,x一,y);}189以下程序的输出结果是A)123456780B)123456780〇12345678D)147main(){charch[3][4]={"123","456","78"},*p[3];inti;for(i=0;i<3;i++)p[i]=ch[i];for(i=0:i<3;i++)printf("%s",p[i]);)C2190以下程序的输出结果是A)16B)2〇9D)1#defineSQR(X)X*Xmain(){inta=16,k=2,m=l;a/=SQR(k+m)/SQR(k+m);printf("d 93",a);)B2191以下程序的输出结果是A)17,021,0x11B)17,17,17B)17,0x11,021D)17,21,11main(){intk=17;printf(*%d,%o,%x 94”,k,k,k);}D2192以下程序的输出结果是A)18B)19〇20D)21mainO{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=l;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("/dn”,s);)A2193以下程序的输出结果是A)20B)31〇321D)210main(){intn=4;while(n-)printf("%d",-n);}A2194以下程序的输出结果是A)20B)21〇22D)23B2 95thtmjdlndmain()(inti,k,a[10],p[3];k=5;for(i=0;iく10;i++)a[i]=i;for(i=0;i<3;i++)p[i]=a[i*(i+l)];for(i=0;i<3;i++)k+=p[i]*2;printfk);}195以下程序的输出结果是A)699B)669〇61515D)6615intd=l;fun(intp){staticintd=5;d+=p;printf(,z%d”,d);return(d);)main(){inta=3;printf("%d 96",fun(a+fun(d)));}C2196以下程序的输出结果是A)9B)6〇36D)18ftdefinef(x)x*xmain(){inta=6,b=2,c;c=f(a)/f(b);printf("%d 97",c);}C2197以下程序的输出结果是A)ABCDB)ABCD〇EFGD)EFGHFGHEFGJKIJKLKLIJ0Mmain(){charw[][10]={"ABCD","EFGH","IJKL","MNOP"},k;for(k=l;k<3;k++)printf("%s 98",w[k]);)D2198以下程序的输出结果是A)ABCDB)ABCDC)EFGD)EFGHFGHEFGJKIJKLKLIJ0MB2 99thtmjdlndmain(){charw[][10]={"ABCD〃,〃MN0P”},k;for(k=l;k<3;k++)printf(*%s 100*,w[k]);}199以下程序的输出结果是A)4211B)000804678D)8888main(){char*s="12134211";intv[4]={0,0,0,0},k,i;for(k=0;s[k];k++){switch(s[k]){case'r:i=0;case'2':i=l;case'3':i=2;case'4':i=3;)v[i]++;)for(k=0;k<4;k++)printf("%d",v[k]);)B2200以下程序的输出结果是A)6B)6789〇'6'D)789main(){chara[10]={T','2','3','4','5','6','7','8','9',0},*p;inti;i=8;p=a+i;printf("%s 101",p-3);)B2201以下程序的输出的结果是intx=3;main(){inti;for(i=l;iくx;i++)increO;}ncre(){staicintx=l;x*=x+l;C2 102thtmjdlndprintf(*%d",x);}A)33B)22C)26D)25202以下程序的输出结果是#include 103*,a);}A)21B)32C)33D)11B2203以下程序的输出结果是intf(){staticinti=0;ints=l;s+=i;i++;returns;}mainO{inti,a=0;for(i=0;iく5;i++)a+=f();printf("%d 104",a);)A)20B)24C)25D)15D2204请读程序:staticinta[]={l,3,5,7,9};inty,x,*p;y=l;p=&a[l];for(x=0;x<3;x++)y・二・(p+x);printfy);D2 105thtmjdlnd则上面程序的输出结果是ーA、110B、102C、100D、105205下面函数的功能是A)求字符串的长度B)比较两个字符串的大小0将字符串x复制到字符串yD)将字符串x连接到字符串y后面intfunl(char*x){char*y=x;while(*y++);return(y-x-1);}A2206下面函数的功能是sss(s,t)char*s,*t;{while((*s)&&(*t)&&(*t++==*s++));return(*s-*t);)A)求字符串的长度B)比较两个字符串的大小0将字符串s复制到字符串t中D)将字符串s接续到字符串t中B2207下面能正确进行字符串赋值操作的语句是Achars[5]={"ABCDE"};Bchars[5J={'a','b','c',‘d',''e'};Cchar*s;s二・ABCDEF"'Dchar*s;scasnf('%s”,s);C2208下述对c语言字符数组的描术中错误的是A)字符数组可以存放字符串B)字符数组中的字符串可以整体输入、输出0可以在赋值语句中通过赋值运算符"="对字符数组整体赋值D)不可以用关系运算符对字符数组中的字符串进行比较C2209卜•面的程序A)输出的是1B)输出的是1和一2〇输出的是3和〇D)是死循环main(){intx=3;do{printf("%d 106”,X-=2);}while(!(—x));}B2210下面的程序执行后,文件testt.t中的内容是#include 107thtmjdlndfclose(myf);)main(){fun("test","newworld”;fun("test","hello,“0;)}A)hello,B)newworldhello,C)newworldD)hello,rid211下面各语句行中,能正是行赋字符串操作的语句行是A)charst[4][5]={"ABCDE”};B)chars[5]={'A','B','C','D','E'};Ochar*s;s="ABCDE”;D)char*s;scanf("%S",S);c2212ド面程序的输出是ーintw=3;main()(intw=10;printf("%d 108",fun(5)*w);}fun(intk){if(k=O)returnw;return(fun(k-1)*k);}A)360B)360001080D)1200B2213下面程序的输出是ーmain(){char*a="12134211”;intvl二〇,v2=0,v3二〇,v4二〇,k;for(k=O;s[k];k++)switch(s[k]){default:v4++;case'I*:vl++;case'3':v3++;case'2':v2++;}printf("vl=%d,v2=%d,v3=%d,v4=%d 109",vl,v2,v3,v4);}A)vl=4,v2=2,v3=l,v4=lB)vl=4,v2=9,v3=3,v4=lC)vl=5,v2=8,v3=6,v4=lD)vl=8,v2=8,v3=8,v4=8C2214下面程序的输出是mainO{intx=3,y=6,a=0;while(x++!=(y+=ol)){a+o=l;if(y#includemainO{charss[10]="12345";D2 110thtmjdlndstrcat(ss,“6789”);gets(ss)jprintf("%s 111",ss);}A)ABCB)ABC9C)123456ABCD)ABC456789215下面程序的输出是A)0123B)04010〇04515D)14515mainO{enumteam(my,your=4,his,her=his+10);printf("%d%d%d%d 112",my,your,his,her);}c2216下面程序的输出是A)0B)1〇3D)不确定的值mainO{intx=10,y=3;printf("%d 113",y=x/y);}c2217下面程序的输出是A)-1B)0C)1D)不确定的值mainO{intx=100,a=10,b=20,ok1=5,ok2=0;if(a 114",x);)A2218下面程序的输出是A)1B)2〇7D)10intm=13;intfun2(intx,inty){intm=3;return(x*y-m);)mainO{inta=7,b=5;printf("%d 115",fun2(a,b)/m);}B2219下面程序的输出是A)100B)160C)120D)64mainO{charx=040;printfr%d 116*,x=x«l);}D2 117thtmjdlnd220下面程序的输出是A)17B)18C)23D)24main(){intx=023;printf(%d 118*,-x);}B2221下面程序的输出是A)23B)26033D)36intaa[3][3]={{2},{4},{6});mainO{inti,*p=&aa[0][0];for(i=0;iく2;i++){if(i==0)aa[i][i+l]=*p+l;else++p;printf(级d",*p);})A2222下面程序的输出是A)3B)4C)1D)2main(){inta[10]={l,2,3,4,5,6,7,8,9,10},*p=a;printf("%d 119”,*(p+2));}A2223下面程序的输出是A)3B)4〇6D)9fun3(intx)staticinta=3;a+=x;return(a);)mainO{intk=2,m=l,n;n=fun3(k);n=fun3(m);printf("%d 120",n);}C2224下面程序的输出是A)60B)68C)99D)108mainO{inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23);int(*p)[4]=a,i,j,k=O;for(i-0;i<3;i++)for(j=0;j<2;j++)k=k+*(*(p+i)+j);A2 121thtmjdlndprintf("%d'n",k);}225下面程序的输出是A)741B)852C)963D)875421main(){inty=9;for(;y>0;y-){if(y%3-0){printf("紀",一y);continue;}}.)B2226下面程序的输出是A)ABCDB)AC)DD)ABCDBCDBCABCCDCBABDDAAcharsロ="ABCD";mainO{char*p;for(p=s;p 122,p);}A2227下面程序把数组元素中的最大值放入a[0]中。则在if语句中的条件表达式应该是A)p>aB)*p>a[0]C)*p>*a[0]D)*p[0]>*a[0]main(){inta[10]={6,7,2,9,L10,5,8,4,3},*p=a,i;for(i=0;i<10;i++,p++)if()*a=*p;printf("%d",*a);)B228下面程序的输出结果是#include 123cthtmjdlndif(a==b)c=0;elsec=-l;return?;}A)-1B)0C)1D)2229下面程序的输出结果是A)0B)!〇!0D)9main(){inta[]={l,2,3,4,5,6,7,8,9,0,},*p;p=a;printf("%d 124”,*p+9);}c2230下面程序的输出是main()(unsigneda=32768;printf("a=%d 125”,a);}A)a=32768B)a=32767C)a=-32767D)a=-1c2231下面程序的输出是#includeくstring.h>main(){char*a="abcdefgh;fun(a);puts(a);}fun(char*s){intx=0,y;charc;for(y=strlen(s)-1;x 126*,k,a,b);}C2233下列程序执行后输出的结果是#include 127thtmjdlnd{inta=2,i,k;for(i=0;i<2;i=++〉k=f(a++);printf("%d 128",k);}A)3B)0C)5D)4234下列程序执行后输隕的结果是intd=l;fun(intq){intd=5;d+=p++;printf("%d〃.d);}main(){inta=3;fun(a);d+=a++;printf("/d 129〃,d);}A)84B)96C)94D)85A2235下列程序执行后的输出结果是A)you&neB)youC)meD)errmainO{chararr[2][4];strcpy(arr,"you");strcpy(arr[l],"me");arr[〇][3]='&';printf("%s 130",arr);)A2236下列程序执行后的输出结果是A)helloB)helC)hloD)himvoidfund(inti);voidfunc2(inti);charstロ="hello,friend!”;voidfund(inti){printf("%c",st[i]);if(i<3){i+=2;func2(i);}}voidfunc2(inti){printf("%c",st[i]);if(i<3){i+=2;fund(i);}}main(){inti=0;fund(i);printf(" 131");}C2237下列程序执行后的输出结果是A)6B)7〇8D)9voidfunc(int*a,intb[]){b[0]-*a+6;}A2 132cthtmjdlndmain(){inta,b[5];a=0;b[0]=3;func(&a,b);printf(*%d 133,b[0]);}238请读程序:intx=10;inty=x++;printf("%d,%d",(x++,y),y++);则上面程序的输出结果是ーA:ll,10B:ll,11C:10,10D:10,11A2239下列程序的运行结果是A)a=%2,b=%5B)a=2,b=5C)a=d,b=dD)a=%d,b=%d#include 134”,a,c);}B2240下列程序的输出结果是main(){charch[2][5]={*6934,*8254*},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>'\0'&&p[i][j]くニ'9';j+=2)s=10*s+p[i][j]-'0';printf("%d 135",s);A)6385B)69825C)63825D)693825A2241请读程序:main(){printf("刎”,null);}则上面程序的输出结果是ーA:0B:变量无定义C:-1D:1B2242设有以下宏定义:^defineN3#defineY(n)((N+l)*n)则执行语句:z=2*(N+Y(5+l));后,z的值为A)出错B)42C)48D)54C2243设有以下函数:f(inta){intb=0;staticintc=3;b++;c++;return(a+b+c);)如果在下面的程序中调用该函数,则输出结果是mainO{inta=2,i;for(i=0;i<3;i++)printf(*%d 136*,f(a));}A2 137cthtmjdlndA)7B)7C)7D)789107911137244设正X、y均为整型变量,且x=10y=3,则以下语句的输出结果是printf(*%d,%d 138*,x——y);A)10,3B)9.3C)9.2D)10.2D2245设有如下一段程序:int*var,ab;ab=100var=&ab;ab=*var+10:执行上面的程序后,ab的值为A)120B)110〇100D)90B2246设有如下的函数ggg(x)floatx;{printf(" 139%d”,x*x);}则函数的类型A)与参数x的类型相同B)是voidC)是intD)无法确定C2247设有staticcharstr[]="Beijing”;则执行printf("%d 140",strlen(strcpy(str,"China")));后的输出结果为A)5B)7C)12D)14A2248设intx=l,y=l;表达式(!x||y-)的值是A)0B)1C)2D)-1B2249若有以下说明:inta[12]={l,2,3,4,5,6,7,8,9,10,11,12);charc=,a',d,g;则数值为4的表达式是A)a[g-c]B)a[4]C)a['d'-'c']D)a[*d*-c]D2250若有以下说明:intw[3][4]={{0,1},{2,4},{5,8});int(*p)[4]=w;则数值为4的表达式是A)*w[l]+lB)p++,*(p+l)C)w[2][2]D)p[l][l]D2251若有以下说明和语句,请选出哪个是对c数组元素的正确引用intc[4][5],(*cp)[5];cp=c;A)cp+1B)*(cp+3)C)*(cp+1)+3D)*(*cp+2)D2252若有以下定义和语句:char*sl="12345",*s2="1234”;printf("%d 141”,strlen(strcpy(si,s2)));则输出结果是A)4B)5C)9D)10A2253若有以下定义和语句:intu=010,v=0xl0,w=10:printf("%d,%d,%d 142,u,v,w);则输出结果是:A2 143thtmjdlndA)8,16,10B)10,10,10C)8,8,10D)8,10,10254若有以下定义:chars[20]="programming",*ps=s;则不能代表字符〇的表达式是A)ps+2B)s[2]C)ps[2]D)ps+=2,*psA2255若有以下的说明和语句:main(){intt[3][2],*pt[3],k;for(k=0;k<3:k++)pt[k]=t[k];)则以一选项中能正确表示t数组元素地址的表达式是A)&t[3][2]B)*pt[O]C)*(pt+l)D)&pt[2]C2256若有以下定义:floatx;inta,b;则正确的switch语句是A)switch(x)B)switch(x){easel.0:printf(,z* 144^);{easel,2:printf("* 145");case2.0:printf(グ** 146");case3:printf(** 147");})C)switch(a+b)D)switch(a+b);{case1:printf(' 148");{case1:print""* 149");casel+2:printf('** 150");case2:printf("** 151");})C2257若有以下程序段,W和k都是整型变量:111w二k;LB:if(w==0)gotoLE;w—;printf(***);gotoLB;LE:«则不能与.上面程序段等价的循环语句是A)for(w=k;w!=0;w--)printf("*");B)for(w=k;w:-w)printf(*);C)w=k;D)w=k;while(w"!=0)printf(***);w++;do{w--;printf(〃*");}while(w!=0);C2258若有以下程序片段:charstr[]=*ab 152\012\\\**;printf(%dd”,strlen(str));上面程序片段的输出结果是A)3B)4C)6D)12c2259若有说明,double*p,a;则能通过scanf语句正确给输入项读入数据的程序段是D2 153thtmjdlndA)*p=&a;scanfp);B)p=(double*)malloc(8);scanfp);C)p=&a;scanfa);D)p=&a;scanf(*%le*,p);260若有说明和语句:inta=5;a++;此处表达式a++的值是A)7B)6〇5D)4C2261若有下面的程序片段:inta[12]={0},*p[3],**pp,i;for(i=0;i<3;i++)p[i]=&a[i*4];PP=P:则对数组元素的错误引用是A)pp[0][l]B)a[10]C)p[3][l]D)*(*(p+2)+2)C2262若有下面的说明和定义,则sizeof(structaa)的值是structaa{intrl;doubler2;floatr3;unionuu{charul[5];longu2[2];}ua;}mya;A)30B)29C)24D)22D2263若有定义:floatw;inta,b;则合法的switch语句是A)switch(w)B)switch(a);{case1.0:printf('* 154");{case1printf("* 155");case2.0:printf('** 156");case2printf(ヽ・、n");}}C)switch(b)D)switch(a+b);{case1:printf(〃* 157");{case1:printf('* 158");default:printf(' 159");case2:printf('** 160");case1+2:printf(〃** 161");default:printf(' 162");}}D2264若已定义:inta[]={0,1,2,3,4,5,6,7,8,9],*p=a,i;其中〇〈iく9,则对a数组元素不正确的引用上A)a[p-a]B)*(&a[i])C)p[i]D)a[10]D2265若变量a、i已正确定义,且i已正确赋值,合法的语句是A)a==iB)++i;C)a=a++=5;D)a=int(i);B2266若变量a、i已正确定义,且i已正确赋值,合法的语句是D2 163thtmjdlndA)a==iB)++i;C)a=a++=5;D)a=int(i);若k是int型变量,且有下面的程序片段:k=-3if(k<=0)printf("####")elseprintf("&&&&");输出结果是:A)####B)&&&&0####&&&&D)有语法错误,无输出结果267若X是int型变量,且有下面的程序片段:for(x=3;x<6;x++)printf((x%2)?:("##%d'n"),x);上面程序片段的输出结果是A)**3B)##30##3D)**3##4##4**4**4##5**5**5##5D2268若X是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是ーA)pb=&xB)pb=x;C)*pb=&x;D)*pb二*xA2269若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是for(i=5;i;i--)for(j=0;j<4;j++){••}A)20B)25C)24D)30A2270请选出以下语句的输出结果printf("%d 164",strlen(*\t\*\065\xff 165*));A)5B)14C)8D)输出项不合法,无正常输出A2271请选出正确的程序段A)int*p;B)int*s,k;scanfp);*s=100;C)int*s,k;D)int*s,k;char*p,c;char*p,e;s=&k;s=&k;p=&c;p=&c;*P=a;s=p;…*s=l;C2272若a、b、cl、c2、x、y、均是整型变量,正确的switch语句是A)swich(a+b);B)switch(a*a+b*b){case1:y=a+b;break;{case3:case〇:y=a-b;break;case1:y=a+b;break;}case3:y=b-a,break;D2 166thtmjdlnd}C)switchaD)switch(a-b){casecl:y=a-b;break{default:y=a*b;breakcasec2:x=a*d;breakcase3:case4:x=a+b;breakdefault:x=a+b;case10:case11:y=a-b;break;})273请选出以下程序的输出结果#include 167");)A)0987654321B)4321098765C)5678901234D)0987651234C2274请读程序片段:#include 168#include 169");}sub(s,y)int*s,y;{staticintt=3;y=s[t];t—;)A)1234B)432100000D)4444276请选出以下程序的输出结果#include 170”,a,b,c);)A)5,2,3B)-5,-12,-7C)-5,-12,-17D)5,-2,-7B2277请选出以下程序段的输出结果#include 171thtmjdlndccccddddddddeeee278请读程序:#include 172*,y);)若运行时从键盘上输入2.0 173",*s);)上面程序的输出结果是A)11.100000B)12.100000〇21.100000D)1.100000D2 174thtmjdlnd280请读程序:#include 175",strcmp(sl,s2));}输出结果是:A)正数B)负数C)零D)不确定的值A2282两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是main(){intx;scanf("%d",&x);if(x++>5)printf("%d",x);elseprintf(*%d 176*»x);}A)7和5B)6和3C)7和4D)6和4A2283能正确表示a和b同时为正或同时为负的逻辑表达式是A)(a>=0IIb>=0)&&(a<0IIb<0)B)(a>=0&&b>=0)&&(a<0&&b<0)C)(a+b>0)&&(a+b<=0)D)a*b>0D2284请读程序:#include 177thtmjdlnd{floatx,y,z;scan(*%f%f*,&x,&y);z=x/y;while(l){if(fabs(z)>l.0){x=y;y=z;z=x/y;)elsebreak}printf(线f 178",y);}若运行时从键盘上输入3.62.4くCR>(くCR>表示回车),则输出的结果是A)1.500000B)1.600000〇2.000000D)2.400000285请读程序:#include 179",p);}上面程序的输出结果是(ー表示空格)A)STRINGl—l1—11—»l—lB)STRINGC)STRINGl-ll-1JD)不确定的D2286请读程序:#include 180thtmjdlnd{*p=fun(p);putchar(*p);p++;}putchar(* 181');)若从键盘上输入OPENTHEDOORくCR>(くCR>表示回车),则上面程序的输出结果是A)oPENtHEdOORB)openthedoorC)OPENTHEDOORD)OpenTheDoor287请读程序:#include 182*,a[2]);}程序的输出结果是:A)6B)8C)4D)2A2288请读程序:#include 183",a,b);A2 184thtmjdlnd)上面程序的输出结果是A)a=2,b=lB)a=l,b=lC)a=l,b=0D)a=2,b=2290请读程序:#include 185cthtmjdlndA循环体将执行一次B循环体将执行两次C循环体将执行无限次D系统将提示有语法错误X=-l;do{x=x*x;}while(!x);297当执行下面程序且输入:ABC时,输出的结果是ー#include 186'Z,ss);}A)ABCB)ABC9C)123456ABCD)ABC456789A2298当c的值不为〇时,在下列选项中能正确将C的值赋给变量a、b的是ーA)c=b=a;B)(a=c)||(b=c);C)(a=c)&&(b=c);C)a=c=b:c2299不能把字符串:Hello!赋给数组b的语句是A)charb[10]={'H','e',T',T',‘〇',’!'};B)charb[10];b=*Hello!*;C)charb[10];strcpy(b,"Hello!”);D)charb[10]="Hello!";B2300t为int类型,进人下面的循环之前,t的值为〇while(t=l){……}则以下叙述中正确的是A)循环控制表达式的值为〇B)循环控制表达式的值为10循环控制表达式不合法D)以上说法都不对B2301变量a所占内存字节数是A)4B)5〇6D)8unionU{charst[4];inti;long1;);structA{intc;unionUu;}a;C3302标准函数fgets(s,n,f)的功能是A)从文件f中读取长度为n的字符串存入指针s所指的内存B)从文件f中读取长度不超过n-1的字符串存入指针s所指的内存0从文件f中读取n个字符串存入指针s所指的内存B3 187thtmjdlndD)从文件f中读取长度为n-1的字符串存入指针s所指的内存303rewind函数的作用是.〇A、重新打开文件B、使文件位置指针重新回到文件末C、使文件位置指针重新回到文件的开始D、返回文件长度值C3304当ー,可以不指定数组长度。(A)对静态数组赋初值(B)对动态数组赋初值(〇只给一部分元素赋值(D)对全部数组元素赋初值D3305以下程序的输出结果是—i=5;i=++i*4+2;A、5B、6C、23D、26D3306以下程序的输出结果是ーi=5;i=i++*4+2;A、5B、6C、23D、26C3307以下程序的输出结果是ーmain()(intx,y,z;x=y=z=0;++x||++y++z;printf(a%d,%d,%d 188w,x,y,z);}A、!,1,1B、1,0,0C、!,1,0D、1,0,1B3308c语言中函数能否嵌套调用和递归调用?A、二者均不可B、前者可,后者不可C、前者不可,后者可D、二者均可D3309C语言联合类型在任何给定时刻〇A,所有成员一直驻留在结构中。B.只能有一个成员驻留在结构中。C.部分成员驻留在结构中。B3 189thtmjdlndD.没有成员驻留在结构中。310#include 190*,a,b,c,d);}gbs(a,b)inta,b;{intc;a=a>0?a:-a;b=b>O?b:-b;c=a*b;if(c==0)return(0);while(a!=b)if(a>b)a-=b;elseb-=a;return(c/a);)gys(a,b)inta,b;{if(a*b==O)return(0);a=a>0?a:-a;b=b>O?b:-b;while(a!=b)if(a>b)a一=b;elseb-=a;return(a);)请写出上面程序的运行结果:A、a=30b=63gbs=189gys=9B、a=27b=63gbs=190gys=10C、a=27b=63gbs=189gys=9D、a=27b=63gbs=188gys=10c3311请读程序:main(){int*p,x;x=10;*P=x;printf(〃%d 191”,*p);}A3 192thtmjdlnd请判断上面程序—A、错误:*p=x;printfC%d 193*),*p);正确:p=&x;printf(*%d 194*,p);B、错误:*p=x;printf(线d 195"),*p);正确:p二**x;printf("%d 196",p);C、错误:int*p,x;正确:int*(p),*(x);D、错误:*p=x;正确:p=&x;312根据下面的定义,能打印出字母M的语句是ーA)printf("%c 197”,class[3].name);D)printfclass[2].name[〇]);B)printf("%c 198",class[3].name[l]);C)printf("%c 199",class[2].name[l]);structperson{charname[9];intage;};structpersonclass[10]={*John*,17,"Paul”,19,"Mary",18,"Adam",16);D3313假定建立了以下链表结构,指针P、q分别指向如图所示的结点,则以下可以将q所指结点从链表中删除并释放该结点的语句组是A)free(q);p->next=q->next;B)(*p).next=(*q).next;free(q);C)q=(*q).next;(*p).next=q;free(q);D)q=q->next;pー〉next=q;p=p->next;free(p);B3314假定下列程序的可执行文件名为prg.exe,则在该程序所在的子目录下输入命令行:prghellogoodく回车》后,程序的输出结果是A)hellogoodB)hgC)helD)hellogoodmain()(intargc,char*argv[]){inti;if(argc<-0)return;for(i=l;i 200thtmjdlnd在目录的DOS提示符下键入:PROGABCDEFGHIJKLく回车〉,则输出结果为A)ABCDEFGB)IJHLC)ABCDEFGHIJKLD)IJKLABCDEFGHmain(intargc,char*argvロ)){while(-argc>0)printfargv[argc]);printf(* 201*);}316利用数组写出ー个与!nt*p[4]等价的说明。A、int&p[4];B、intp[4];C、int**p[4];D>int*(*p[4]);B3317请选出以下程序段的输出结果#include 202",k);)A)15B)100C)10D)150A3318若a=5,b=3,c=4,逻辑表达式!(a+b)&&!c的值为ー(A)0(B)-1(C)1(D)2C3319若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是A)EOFB)-1〇非零值D)NULLc3320若程序中有下面的说明和定义structabc{intx;chary;}structabcsi,s2;则会发生的情况是A)编译进错B)程序将顺利编译、连接、执行0能顺利通过编译、连接、但不能执行D)能顺利通过编译、但连接出错A3321若想要通过异或运算对变量a进行高4位求反,低四位不变,则b应为ー。(二进制表示)A、11110000B、00001111C、视a值而定A3 203cthtmjdlndD、不可能实现322若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是A)fopen("A:\user\abc.txt","r")B)fopen("A:\\user\\abc.txt","r+")C)fopen("A:\user\abc.txt","rb")C)fopen("A:\\user\\abc.txt","w")B3323若给定条件表达式(M)?(a++):(a—)则其中表达式M和等价。A、(M==0)B、(M==l)C、(M!=0)D、(M!=0)C3324若已定义:inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[l]地址的表达式是A)p+1B)a+1C)a++D)++pC3325若要用下面的程序片段使指针变量P指向一个存储整型变量的动态存储单元:int*p;p=malloc(sizeof(int));则应填入A)intB)int*C)(*int)D)(int*)D3326以下程序的输出结果是ーmain(){intx,y,z;x=y=z=0;++x&&++y||++z;printf("%d,%d,%d 204”,x,y,z);)A、!,1,1B、1,0,0C、!,1,0D、1,0,1C3327若以下程序所生成的可执行文件名为filel.exe;当打入以下命令行执行该程序时;FILE1CHINABEIJINGSHANGHAI程序的输出结果是A、XHINVWIJINFAHANJHAIB、FILE1CHINABEIJINGC>CBSD、FCBmain(intarge,char*argv[]){charch[7]={"65ab21");inti,s=0;for(i=0;ch[i]>=,0*&&ch[i]'9';i+=2)s=10*s+ch[i]-'0';A3 205thtmjdlndprint("%d 206",s)'}328若有定义和语句:int**pp,*p,a=10,b=20;pp=&p;p=&a;p=&b;printf(^dXn*,*p,**pp);则输出结果是:A)10,20B)10,10020,10D)20,20D3329若有说明语句:inta,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是A)scanf("紀%d%d”,&a,&b,d);B)scanf("%d%d%d",&a,&b,&d);C)scanf("%d%d%d",a,b,d);D)scanf("%d%d%d",a,b,*d);A3330若有说明:inti,j=2,*p=&i;,则能完成i訂赋值功能的语句是A)i二・p;B)p・二・&j;C)i=&j;D)i=・*p;B3331若有说明:inti,j=7,*p二&i;,则与i=j;等价的语句是A)i=*p;B)*p二・&j;C)i=&j;D)i=**p;B3332若有说明:long*p,a;则不能通过scanf语句正确给输入项读入数据的程序段是A)*p=&a;scanf("%ld",p);B)p=(long*)malloc(8);scanf("%ld",p);C)scanf("%ld",p=&a);D)scanf("%ld",&a);A3333若有以下的定义:inta[]={l,2,3,4,5,6,7,88,9,10},*p=a;则值为3的表式是A)p+=2,*(p++)B)p+=2,*++p0p+=3,*kp++D)p+=2,++*pA3334若有以下的说明,则对初值中字符‘a'的引用方式为ー.staticstruct|charch;doublex;charaロ;}c[2][2]={{{,a,3.5,Tbe'},{'c',4.5,'de'),{'m',8.6,'abc'}}};A、c.chB、c[0][0].chC、c[l][1].chD、a[0]B3335若有以下的说明和语句,则在执行for语句后,*(*(pt+l)+2)表示的数组元素是C3 207thtmjdlndA)t[2][0]B)t[2][2]0t[l][2]D)t[2][l]intt[3][3],*pt([3],k;for(k=0;k<3;k++)pt[k]=&t[k][0];336若有以下的说明和语句,则在执行for语句后,*(*(pt+l)+2)表示的数组元素是A)t[2][0]B)t[2][2]C)t[l][2]D)t[2][l]intt[3][3],*pt([3],k;for(k=0;k<3;k++)pt[k]=&t[k][0]?若有下面的说明和定义:structtest{intml;charm2;floatm3;unionuu{charul[5];intu2[2];}ua;}myaa;则sizeof(structtest)的值是A)12B)16C)14D)9A3337若有以下定义,则语句()是正确的。uniondata{inti;charc;floatf;}a;intn;A:s=5B:a={2,*a1.2}C:printf("%d 208",a)D:n=aC3338若有以下定义和语句:inta[10]={l,2,3,4,5,6,7,8,9,10},*p=a;则不能表示a数组元素的表达式是A)*pB)a[10]C)*aD)a[p-a]B3339若有以下定义和语句:doubler=99,*p=&r;*p=r;则以下正确的叙述是A)以下两处的・p含义相同,都说明给指针变量p赋值B)在"doubler=99,*p=&r:〃中,把r的地址赋值给了p所指的存储单元0语句〃・p二r;”把变量r的值赋给指针变量p1))语句"*p=r;"取变量r的值放回r中D3340若有以下定义和语句:intw[2][3],(*pw)[3];pw=w;则对W数组元素非法引用是A)*(w[0]+2)B)*(pw+1)[2]C)pw[0][0]D)*(pw[l]+2)B3 209cthtmjdlnd341若有以下说明和定义fun(int*c){}main(){int(*a)()=fun,*b(),w[10],c;।।।}在必要的赋值之后,对fun函数的正确调用语句是A)a=a(w);B)(*a)(&c);C)b=*b(w);D)fun(b);B3342若有以下说明:inta[10]={l,2,3,4,5,6,7,8,9,10},*p=a;则数值为6的表达式是A)*p+6B)*(p+6)C)*p+=5D)p+5C3343若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是A)p=2*(int*)malloc(sizeof(int));B)p=(int*)malloc(2*sizeof(int));C)p=(int*)malloc(2*2);D)p=(int*)calloc(2,sizeof(int));A3344设已有定义:char*st=*howareyou";下列程序段中正确的是A)chara[ll],*p;strcpy(p=a+l,&st[4]);B)chara[ll];strcpy(++a,st);C)chara[l1];strcpy(a,st);D)chara[],*p;strcpy(p=&a[l],st+2);A3345设有如下程序:#include 210”,**k);}上面程序的输出结果是A)运行错误B)100〇i的地址D)j的地址B3346设一整型(int)变量占用2个字节则下述共同体变量x所占用内存字节数为〇unionexp{inti;floatj;doublek;}x;A、14个B、7个C、8个D、随机而定C3 211cthtmjdlnd347设x的值为4,则表达式(++x)+(++x)+(++x)的值是()A:12;B:18;C:16;D:21D3348设pl和p2是指向同一个int型ー维数组的指针变量,k为int型变量,则不能正确执行的语句是A)k=*pl+*p2:B)p2=k;C)pl=p2;D)k=*pl*(*p2);B3349设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为A)不定值B)4〇3D)1C3350设a=3,b=2(则表达式a~b>>2的值的二进制表示为〇A、00000011B、00000110C、00000100D、00000010A3351设ch是char型变量,其值为A,且有下面的表达式:ch=(ch>=,A*&&chくニ'Z')?(ch+32):ch的值是A)AB)aC)ZD)zB3352设有如下定义:structsk{inta;floatb;}data,*p;若有p=&data;,则对data中的a域的正确引用是A)(*p).data,aB)(*p).aC)p->data.aD)p.data.aB3353设有如下定义:int(*ptr)*();则以下叙述中正确的是A)ptr是指向ー维组数的指针变量B)ptr是指向int型数据的指针变量C)ptr是指向函数的指针,该函数返回・个int型数据D)ptr是ー个函数名,该函数的返回值是指向int型数据的指针C3354设有如下定义:int(*ptr)*();则以下叙述中正确的是A)ptr是指向ー维组数的指针变量B)ptr是指向int型数据的指针变量C)ptr是指向函数的指针,该函数返回一个int型数据D)ptr是ー个函数名,该函数的返回值是指向int型数据的指针C3355设有如下枚举类型定义:enumlanguage{Basic=3,Assembly,Ada=100,COBOL,Fortran};枚举量Fortran的值为A)4B)7C)102D)103c3356设有如下函数定义:c3 212cthtmjdlndintf(char*s){char*p=s;while(*p!=,\0f)p++;return(p-s);)如果在主程序中用下面的语句调用上述函数,则输出结果为printf("%d 213",f("goodbey!"));A)3B)6C)8D)0357设有说明int(*ptr)[m];其中的标识符ptr是()〇(A)M个指向整型变量的指针(B)指向M个整型变量的函数指针(〇ー个指向具有M个整型元素的ー维数组的指针(D)具有M个指针元素的ー维指针数组,每个元素都只能指向整型量c3358为表示关系x》y2z,应使用C语言表达式A)(x>=y)&&(y>=z)B(x>=y)AND(y>=z)C)(x>=y>=z)D)(x>=y)&(y>=z)A3359设有以下定义:typedefunion{longi;intk[5];charc;}DATE;structdate{intcat;DATEcow;doubledog;}too;DATEmax;则下列语句的执行结果是printf("%dzz,sizeof(structdate)+sizeof(max));A)25B)30C)18D)8B3360设有以下说明语句typedefstruct{intn;charch[8];}PER;则下面叙述中正确的是A)PER是结构体变量名B)PER是结构体类型名C)typedefstruct是结构体类型D)struct是结构体类型名B3361设有以下说明语句structex(intx;floaty;charz;}example;则下面的叙述中不正确的是A)struct结构体类型的关键字B)example是结构体类型名0x,y,z都是结构体成员名D)structex是结构体类型B3362下列程序的输出结果是main(){inta[5]={2,4,6,8,10},*p,**k;P=a;k=&p;C3 214thtmjdlndprintf(线d”,*(p++));printf(飞d 215”,**k);}A)44B)22C)24D)46363下列程序的输出结果是main(){char*pl,*p2,str[50]=*xyz”;pl="abed";p2="ABCD";strepy(str+2,strcat(pl+2,p2+l);printf)"%s",str);)A)xyabcABB)abcABzC)AbabczD)xycdBCDD3364下列程序的输出结果是A)4B)6〇8D)10intb=2;intfunc(int*a){b+=*a;return(b);}main(){inta=2,res=2;res+=func(&a);printf(,z%d 216”,res);)B3365下列程序的输出结果是A)5B)6〇7D)8structabc{inta,b,c;};main(){structabcs[2]={{1,2,3},{4,5,6}};intt;t=s[0],a+s[l],b;printf("%d 217",t);)B3366下列程序的输出结果是A)非法B)a[4]的地址C)5D)3mainO{chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;printf("%d",・一p);)C3367下列程序的运行结果是A)63B)360编译出错D)00voidfun(int*a,int*b){int*k;k=a;a=b;b=k:}B3 218thtmjdlndmain(){inta=3,b=6,*x=&a,*y二&b;fun(x,y);printf("%d%d”,a,b);}368请读程序:intx,y;for(x=l;x<5;x+=2){for(y=l;x<5;y++)printf(*%2d*»x*y);if(y==5)printf(' 219");}A、234000B、135012C>2345912D、152010c3369下列程序执行后的输出结果是A)6B)8〇10D)12^defineMA(x)x*(xT)main(){inta=l,b=2;printf(“猊、n”,MA(l+a+b));}B3370下列程序执行后的输出结果是A)-32767B)FFFE〇-1D)-32768main(){charx=0xFFFF;printf(*%d 220”,x—);}C3371下列分支语句合法的是()〇(A)if(a>c)m=aelsem=c(B)ifa>c(ifa>b)m=a(C)if(a>b&&a>c)m=a(D)case6,7:printf("reset'n")C3372下面程序的输出结果为structst{intx;int*y;}*p;intdt[4]={10,20,30,40);C3 221cthtmjdlndstructstaa[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]};main(){P=aa;printf(*%d 222*,++pー〉x);printf(*%d 223*,(++p)->x);printf(*%d 224*,++(*p->y));}A)10B)50C)51D)602060607020212131373下列有关长度不同的数据进行运算时,系统的扩充操作正确的是ーA、右端对齐,短方按符号位扩充,无符号数以零扩充B、右端对齐,短方按零扩充C、左端对齐,短方按符号位扩充,无符号数以零扩充D、左端对齐,短方以"1”扩充A3374下面程序的输出是A)32B)16〇8D)24typedefunion{longx[2];inty[4];charz[8];}MYTYPE;MYTYPEthem;main(){printf(线d 225”,sizeof(them));}C3375下面程序的输出是A)0B)1C)3D)6main(){structcmplx{intx;inty;}cnum[2]={l,3,2,7};printf(〃%d 226,cnum[0].y/cnum[0].x*cnumfl].x);}D3376请读程序:main(){structcmplx{intx;inty;}cnum[2]={l,3,2,7};printf("%d 227”,cnum[0].y/cnum[0].x*cnum[l].x);)则上面程序的输出结果是ーA:0B:1C:3D:6D3377写出下列程序段运行结果unsignedinta=3,b=10;printf("%d 228",a<<2b==l);A3 229thtmjdlndA、!3B、12C、8D、14378以数据块为单位对数据进行整体读写时如果ptr是指向内存中数据块的首地址,fp是文件指针,那么数据块中每个数据项的大小为()»(A)sizeof(*ptr)(B)*ptr(C)sizeof(ptr)(D)sizeof(*fp)A3379已知字符0的ASCII码为十六进制的30,下面程序的输出是A)6B)9〇0D)3main(){union{unsignedcharc;unsignedinti[4];}z;z.i[0]=0x39;z.i[l]=0x36;printf("%c 230",z.c);}B3380以下程序的输出是A)10B)11C)51D)60structst{intx;int*y;}*p;intdt[4]={10,20,30,40);structstaa[4]={50,&dt【〇],60,&dt[〇],60,&dt[〇],60,&dt[〇],};main(){p=aa;printf("%d 231”,++(p->x));)C3381以下程序的输出结果是structI1AR{intx,y;structHAR*p;}h[2];main(){h[0]>x=l;h[0];y=2;h[l],x=3;h[l];y=4:h[0],p=&h[l],p=h;printf(/z%d%d 232*,(h[O],p)->x,(h[l],p)->y):}A)12B)23C)14D)32D3382以下程序的输出结果是unionmyun{struct{intx,y,z;}u;intk;D3 233thtmjdlnd}a;main(){a.u.x=4;a.u.y=5;a.u.z=6;a.kニ〇;printf(%d 234*,a.u.x);}A)4B)5C)6D)0383请读程序:main(){union{intk;chari[2];}*s,a;s=&a;s—i[〇]二0x39;s—i[l]=0x38;printf(a%x>n”,s—k);}则上面程序的输出结果是ーA)3839B)3938〇3800390)390038A3384有如下定义structperson{charname[9];intage;};strictpersonclass[10]={*Johu*,17,“Paul",19"Mary",18,"Adam16,):根据上述定义,能输出字母M的语句是A)prinft("%c 235",class[3].mane);B)pfintf("%c 236",class[3].name[l]);C)prinft("%c 237",class[2].name[l]);D)printf("%c 238",class[2].name[0]);D3385有如下函数调用语句func(reel,rec2+rec3,(rec4,rec5);该函数调用语句中,含有的实参个数是A)3B)4〇5D)有语法错A3386以下选项中,能定义s为合法的结构体变量的是A)typedefstructabcB)struct{doublea;{doublea;charb[10];charb[10];}s;}s;B3 239thtmjdlndC)structABCD)typedefABC{doublea;{doublea;charb[10];charb[10];})ABCs;ABCs;387以下对结构体类型变量的定义中,不正确的是A)typedefstructaaB)ttdefineAAstructaa{intn;AA{intn;floatm;floatm;}AA;}tdl;AAtdl;C)structD)struct{intn;{intn;floatm;floatm;}aa;}tdl;stuctaatdl;C3388以下程序运行后,输出结果是A)1B)709D)llfut(int**s,intp[2][3]){**s=p[l][l];)main(){inta[2][3]={1,3,5,7,9,11},*p;p=(int*)malloc(sizeof(int));fut(&p,a);printfド%d 240”,*p);}C3389有语句charstrl[10],str2[10]={*china*};则能将字符串china赋给数组strl的正确语句是〇A、strl={〃china"};B、strcpy(strl,str2);C、strl=str2;D、strcpy(str2,strl);B3390有以下结构体说明和变量的定义,且如下图所示指针p指向变量a,指针q指向变量bo则不能把结点b连接到结点a之后的语句是A)a.next=q;B)p.next=&b;C)p->next=&b;D)(*p).next二q;structnode{chardata;structnode*next;{a,b,*p=&a,*q=&b;B3 241thtmjdlnddatanextdatanext391有以下程序段chararr口="ABCDE";char*ptr;for(ptr=arr;ptrmain(){union{intk;chari[2];}*s,a;s=&a;s->i[0]=0x39;s->i[l]=0x38;printf("%x 242",s->k);}输出结果是A)3839B)3938C)380039D)390038D3392有以下程序#include"stdio.h"structstu{intnum;charname[10];intage;};voidfun(structstu*p){printf("%s 243”,(*p).name);}main()(structstustudents[3]={{9801,"Zhang”,20},{9802,"Wang",19},(9803,"Zhao",18}};fun(students+2);}输出结果是A)ZhangB)ZhaoC)WangD)18B3393运行下面的程序,如果从键盘上输入:abく回车〉cく回车〉defく回车》则输出结果为A、aB、aC、abD、abcdefbbcC3 244thtmjdlndccdddef#include#defineN6main(){charc[N];inti=0;inti=0;for(;iss(char*s){char*p=s;while(礼p)p++;return(p-s);}main(){char*a="abded”;inti;i=ss(a);print("%d 245",i);)394在C程序中,可把整型数以二进制形式存放到文件中的函数是A)fprintf函数B)fread函数C)fwrite函数D)fputc函数A3395在C语言中,fcloseO函数返回ー时,表示关闭不成功(A)0(B)-1(0EOF(D)非零值D3396在C语言中,如果下面的变量都是int类型,则输出的结果是()„sum=5,p=5;p=sum++,p++,++p;printf("%d 246",p);A、7B、6C、5D、4A3397在scanf()中,表示本输入项在读入后不赋给相应变量的格式说明字符是(A)L(B)h(C)C(D)*D3398在TC语言中int和short两种数据所占用的内存—A)均为2个字节B)由用户自己定义0由所用机器的机器字长决定D)是任意的A3 247cthtmjdlnd399在以下定义中,标识符p_int(*p)[3]A)定义不合法B)是一个指针数组名,每个元素是ー个指向整数变量的指针0是一个指针,它指向ー个具有三个元素的一维数组D)是ー个指向整型变量的指针c3400字符’〇’的ASCII码的十进制数为48,且数组的第0个元素在低位,则以下程序的输出结果是#include 248",s->c[0])}A)39B)9C)38D)8B3
此文档下载收益归作者所有