第一.二.三章1、一个C程序由若干个C函数组成,各个函数在文件中的位置为___________。A、任意B、第一个函数必须是主函数,其他函数任意C、必须完全按照顺序排列D、其他函数必须在前,主函数必须在最后2、下列四个叙述中,正确的是____________。A、C程序中的所有字母都必须小写B、C程序中的关键字必须小写,其他标识符不区分大小写C、C程序中的所有字母都不区分大小写D、C语言中的所有关键字必须小写3、下列四个叙述中,错误的是___________。A、一个C源程序必须有且只能有一个主函数B、一个C源程序可以含零个或多个子函数C、在C源程序中注释说明必须位于语句之后D、C源程序的基本结构是函数4、下面不属于C语言关键字的是___________。A.intB.typedefC.enumD.unien5、以下叙述不正确的是____________。A、分号是C语句的必要组成部分B、C程序的注释可以写在语句的后面C、函数是C程序的基本单位D、主函数的名字不一定用mian表示6、C语言中允许的基本数据类型包括_______。A、整型.实型.逻辑型B、整型.实型.字符型C、整型.字符型.逻辑型D、整型.实型.逻辑型.字符型7、C语言中能用八进制表示的数据类型为________。A.字符型.整型B.整型.实型C.字符型.实型.双精度型D.字符型.整型.实型.双精度型8.设有变量inta=3,b=4,c=5;则以下的表达式中,值为0的表达式是。A.a&&bB.a=bC.a||b+c&&b-cD.(2||(ab)&&!c)9.在C语言中,5种基本数据类型的存储空间长度的排列顺序为:_____A.charint=longint=floatdoubleB.char=intlongint=floatdoubleC.charintlongint=float=doubleD.char=int=longint=floatdouble10.在C语言中,合法的长整型常数是____________。A.0LB.4962710C.0412765D.0xa34b7fe11.若有以下定义语句charc1=’b’,c2=’e’;printf(“%d,%c\n”,c2-c1,c2-‘a’+’A’);则输出结果是__________。A.2,MB.3,EC.2,ED.输出项与相应的格式控制不一致,输出结果不确定12.以下合法的赋值语句是___________。A.x=y=100B.d--;C.x+yD.c=int(a+b)13.设变量t为int型,下列选项中不正确的赋值语句是____________。A.++t;B.n1=(n2=(n3=0));C.k=i==m;D.a=b+c=1;14.在以下一组运算符中,优先级最高的是____________。A.=B.==C.%D.&&15.下列能正确表示a≥10或a≤0的关系表达式是_______。A.a=10ora=0B.a=10|a=0C.a=10||a=0D.a=10&&a=016.下列只有当整数x为奇数时,才是逻辑“真”的表达式是_________。A.x%2==0B.!(x%2==0)C.(x-x/2*2)==0D.!(x%2)17.设a为整型变量,不能正确表达数学关系10a15的C语言表达式是_________。A.10a15B.a==11||a==12||a==13||a==14C.a10&&a15D.!(a=10)&&!(a=15)18.已知x=43,ch=’A’,y=0;则表达式(x=y&&ch’B’&&!y)的值是________。A.0B.语法错C.1D.“假”19.表达式17%4/8的值为_____________。A.0B.1C.2D.320.语句printf(“%d”,(a=2)&&(b=-2));的输出结果是_________。A.无输出B.结果不确定C.-1D.121.以下叙述中错误的是。A.C语言是一种结构化程序设计语言B.结构化程序由顺序.分支.循环三种基本结构组成C.使用三种基本结构构成的程序只能解决简单问题D.结构化程序设计提倡模块化的设计方法第四章顺序结构1.下面程序的输出是______main(){intk=11;printf(k=%d,k=%o,k=%x\n,k,k,k);}A)k=11,k=12,k=13B)k=11,k=13,k=13C)k=11,k=013,k=oXbD)k=11,k=13,k=b2.以下合法的C语言赋值语句是A)a=b=58B)k=int(a+b);C)a=58,b=58D)--i;3.以下程序的输出结果是。main(){intx=10,y=3;printf(“%d\n”,y=x/y);}A)0B)1C)3D)不确定4.若变量已正确说明为int类型,要给a,b,c输入数据,以下正确的输入语句是。A)read(a,b,c);B)scanf(“%d%d%d”,a,b,c);C)scanf(“%D%D%D”,%a,%b,%c);D)scanf(“%d%d%d”,&a,&b,&c);5.执行下面程序段后,c3中的值是_____。intc1=1,c2=2,c3;c3=c1/c2;A)0B)1/2C)0.5D)16.若执行以下程序段,其输出结果是______。inta=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%d\n”,a,b,c);A)3,0,-10B)0,0,5C)-10,3,-10D)3,0,37.以下程序段的输出是_______。floata=57.666;printf(“*%010.2f*\n”,a);A)*0000057.66*B)*57.66*C)*0000057.67*D)*57.67*8.若有以下定义语句:inta=5a++;此处表达式a++的值是____。A)7B)6C)5D)49.若有以下定义和语句:charc1='b',c2='e';printf(%d,%c\n,c2-c1,c2-'a'+’A’);则输出结果是_______。A)2,MB)3,EC)2,eD)输出结果不确定10.以下程序的输出结果是______。main(){intx=10,y=10;printf(%d%d\n,x--,--y);}A)1010B)99C)910D)10911.在C语言中,如果下面的变量都是int类型,则输出结果是______。sum=pad=5;pad=sum++,pad++,++pad;printf(%d\n,pad);A)7B)6C)5D)412.以下程序的输出结果_____。#includestdio.hmain(){inti=010,j=10;printf(%d,%d\n,++i,j--);}A)11,10B)9,10C)010,9D)10,913.请读程序inti=65536printf(%d\n,i);上面程序的输出结果是_____。A)65535B)0C)有语法错误,无输出结果D)114.已知字符A的ASCII码为十进制的65,下面程序的输出是_____。main(){charch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf(%d,%c\n,ch1,ch2);}A)67,DB)67,CC)C,DD)不确定的值15.若有定义语句:chars[10];s=abcd;printf(%c\n,s);则结果是_____。A.输出abcdB.输出aC.输出adcbD.编译不能通过16.若有定义:intx,y;chara,b,c;并有以下输入数据(此处CR代表换行,代表空格):12CRABCCR则能给X赋整数1,给Y赋数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是______。A)scanf(x=%dy=%d,&x,&y);a=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);17.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是____。main(){intx;scanf(%d,&x);if(x++5)printf(%d,x);elseprintf(%d\n,x--);}A)7和5B)6和3C)7和4D)6和418.若执行下面的程序从键盘输入3和4,则输出是______。main(){inta,b,s;scanf(%d%d,&a,&b);s=a;if(ab)s=b;s*=s;printf(%d\n,s);}A)14B)16C)18D)2019.设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值:scanf(i=%d,f=%f,&i,&f);为了把100和765.12分别赋给i和f,则正确的输入为:。A)100空格765.12回车B)i=100,f=765.12回车C)100回车765.12回车D)x=100回车,y=765.12回车20.以下程序的输出结果是____。#includestdio.hmain(){printf(%d\n,NULL);}A)不确定B)0C)–1D)1第五章选择结构第六章循环结构1.有以下程序main(){inti;for(i=0;i3;i++)switch(i){case1:printf(%d,i);case2:printf(%d,i);default:printf(%d,i);}}执行后输出结果是。A)011122B)012C)012020D)1202.有以下程序main(){inti=1,j=1,k=2;if((j++||k++)&&i++)printf(%d,%d,%d\n,i,j,k);}执行后输出结果是。A)1,1,2B)2,2,1C)2,2,2D)2,2,33.有以下程序main(){inta=5,b=4,c=3,d=2;if(abc)printf(%d\n,d);elseif(((c-1)=d)==1)printf(%d\n,d+1);elseprintf(%d\n,d+2);}执行后输出结果是。A)2B)3C)4D)编译时有错,无结果4.有以下程序main(){inti=0,s=0;do{if(i%2){i++;continue;}i++;s+=i;}while(i7);printf(%d\n,s);}执行后输出结果是。A)16B)12C)28D)215.以下程序的输出结果是。main(){inta=5,b=4,c=6,d;printf(%d\n,d=ab?(ac?a:c):(b));}A)5B)4C)6D)不确定6.以下程序中,while循环的循环次数是。main(){inti=0;while(i10){if(i1)continue;if(i==5)break;i++;}}A)1B)10C)6D)死循环,不能确定次数7.以下程序的输出结果是。main(){inta=0,i;for(i=1;i5;i++){switch(i){case0:case3:a+=2;case1:case2:a+=3;default:a+=5;}}printf(%d\n,a);}A)31B)13C)10D)208.以下程序的输出结果是。main(){inta=4,b=5,c=0,d;d=!a&&!b||!c;printf(%d\n,d);}A)1B)0C)非0的数D)-19.以下程序的输出结果是。#includestdio.hmain(){inti=0,a=0;while(i20){for(;;){if((i%10)==0)break;elsei--;}i+=11;