高职升本计算机基础复习材料—C语言精编100题1C语言精编100题一、单选题1.由C语言编写的代码程序()A.可直接执行B.是一个源程序C.经过编译即可执行D.经过编译解释才能执行2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()A.大写字母B.中划线C.数字字符D.下划线3.下列选项中,不能用作标识符的是()A._1234_B._1_2C.int_2_D.2_int_4.以下选项中合法的用户标识符是()A.longB._2TestC.3DmaxD.A.dat5.以下不能定义为用户标识符的是()A.MainB._0C._intD.sizeof6.下列定义变量的语句错误的是()A.int_int;B.doubleint_;C.charFor;D.floatUS$;7.在C语言中,合法的实型常数是()A.5E2.0B.E-3C.2E0D.1.3E8.在C语言中,合法的实型常数是()A.1.2E0.5B.3.14159EC.5E-3D.E159.以下选项中,不能作为合法常量的是()A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e010.以下不合法的数值常量是()A.011B.le1C.8.0E0.5D.0xabcd11.在C语言中,非法的字符常量是()A.‘\t’B.‘\17’C.\nD.‘\xaa’12.以下不合法的字符常量是()A.‘\018’B.‘\’C.‘\\’D.‘\xcc’13.下列运算符中优先级最高的运算符是()()A.=B.=C.%D.&&A.==B./C.=D.=14.以下程序的输出结果是()main(){inta=3,b=4;printf(%d\n,a=b);}A.3B.4C.1D.015.在C语言中,以下非法的表达式是()高职升本计算机基础复习材料—C语言精编100题2A.0=x=100B.i=j==0C.(char)(65+3)D.x+1=x+116.在C语言中,以下非法的赋值语句是()A.j++;B.++(i+1);C.x=j0;D.k=i==j;17.表达式3.6-5/2+1.2+5%2的值是()A.4.3B.4.8C.3.3D.3.818.设有语句:inta=3;则执行了语句a+=a-=a*a;变量a的值是()A.3B.0C.9D.-1219.设有语句:intx=10;则执行了语句x+=x-=x-x;变量x的值是()A.10B.20C.40D.3020.以下程序的输出结果是()()()()()⑴main(){inti=10,j=1;printf(%d,%d\n,i--,++j);}A.9,2B.10,2C.9,1D.10,1⑵main(){inta=12,b=12;printf(%d%d\n,--a,++b);}A.1010B.1212C.1110D.1113⑶main(){intx=023;printf(%d\n,--x);}A.17B.18C.23D.24⑷main(){intx=10,y=10;printf(%d%d\n,x--,--y);}A.1010B.99C.910D.109⑸main(){inti=010,j=10;printf(%d,%d\n,++i,j--);}A.11,10B.9,10C.010,9D.10,921.以下程序的输出结果是()main(){intx=100,y=200;printf(%d\n,(x,y));}A.200B.100C.100200D)20010022.以下程序的输出结果是()main(){intx=10,y=3,z;高职升本计算机基础复习材料—C语言精编100题3printf(%d\n,z=(x%y,x/y));}A.1B.0C.4D.323.intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()A.k++B.k+=1C.++kD.k+124.以下程序的输出结果是()main(){intx,y,z;x=y=1;z=x++,y++,++y;printf(%d,%d,%d\n,x,y,z);}A.2,3,3B.2,3,2C.2,3,1D.2,2,125.设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为()A.1B.2C.3D.426.设intx=-1;执行表达式++x||++x||++x||++x,x的值是()A.0B.1C.2D.427.以下程序的输出结果是(1)main(){intk=11;printf(k=%d,k=%o,k=%x\n,k,k,k);}()A.k=11,k=12,k=11B.k=11,k=13,k=13C.k=11,k=013,k=0xbD.k=11,k=13,k=b(2)main(){intk=17;printf(%d,%o,%x\n,k,k,k);}()A.17,021,0x11B.17,17,17C.17,0x11,021D.17,21,1128.运行时从键盘上输入9876543210CR(CR表示回车),则该程序的输出结果是()main(){inta;floatb,c;scanf(%2d%3f%4f\n,&a,&b,&c);printf(a=%d,b=%f,c=%f\n,a,b,c);}A.a=98,b=765,c=4321B.a=10,b=432,c=8765C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.029.设变量均已正确定义,若要通过scanf(%d%c%d%c,&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)()A.10□X□20□Y回车B.10□X20□Y回车C.10□X回车D.10X回车20□Y回车20Y回车30.以下程序的输出结果是()#defineMA(x)x*(x-1)main(){inta=1,b=2;printf(%d\n,MA(1+a+b));}高职升本计算机基础复习材料—C语言精编100题4A.6B.8C.10D.1231.以下程序的输出结果是()#defineM(x,y,z)x*y+zmain(){inta=1,b=2,c=3;printf(%d\n,M(a+b,b+c,c+a));}A.19B.17C.15D.1232.以下程序段的输出结果是()#defineMIN(x,y)(x)(y)?(x):(y)main(){inti=10,j=15,k;k=10*MIN(i,j);printf(%d\n,k);}A.15B.100C.10D.15033.设a=1,b=2,c=3,d=4,则表达式ab?a:cd?a:d的结果是()A.4B.3C.2D.134.以下程序段的输出结果是()main(){intx=5;if(x++5)printf(%d\n,x);elseprintf(%d\n,x--);}A.4B.5C.6D.735.有以下程序main(){intn=4;while(n--)printf(%d,--n);}程序执行后的输出结果是()A.20B.31C.321D.21036.有以下程序main(){inty=10;while(y--);printf(y=%d\n,y);}程序执行后的输出结果是()A.y=0B.y=-1C.y=1D.while构成无限循环37.有以下程序高职升本计算机基础复习材料—C语言精编100题5main(){inti;for(i=0;i3;i++)switch(i){case0:printf(%d,i);case1:printf(%d,i);default:printf(%d,i);}}程序执行后的输出结果是()A.000112B.012C.012020D.12038.以下叙述中正确的是()A.构成C程序的基本单位是函数B.可以在一个函数中定义另一个函数C.main()函数必须放在其它函数之前D.所有被调用函数一定要在调用之前进行定义39.以下说法中正确的是()A.C语言程序总是从第一个函数开始执行B.在C语言程序中,要调用的函数必须在main()函数中定义C.C语言程序总是从main()函数开始执行D.C语言程序中的main()函数必须放在程序的开始部分40.以下程序的输出结果是()intfun(intx){intp;if(x==0||x==1)p=3;elsep=x-fun(x-2);returnp;}main(){printf(%d\n,fun(7));}A.7B.3C.2D.041.以下数组定义中错误的是()A.intx[][3]={0};B.intx[2][3]={{1,2},{3,4},{5,6}};C.intx[][3]={{1,2,3},{4,5,6}};D.intx[2][3]={1,2,3,4,5,6};42.以下能正确定义二维数组的是()A.inta[][3];B.inta[][3]={2*3};C.inta[][3]={};D.inta[2][3]={{1},{2},{3,4}};43.以下程序的输出结果是()高职升本计算机基础复习材料—C语言精编100题6main(){inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf(%d\n,*(p+2));}A.3B.4C.1D.244.以下程序的输出结果是()main(){inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;printf(%d\n,*p+9);}A.0B.1C.10D.945.以下程序的输出结果是()printf(%d\n,*p+*q);}.16B.10C.8D.646.设有chararray[]=China;则数组array所占的空间字节数为()A.4B.5C.6D.747.在C语言中,对于以下定义正确的叙述为()charx[]=abcdefg;chary[]={'a','b','c','d','e','f','g'};A.数组x和数组y等价B.数组x和数组y的长度相同C.数组x的长度大于数组y的长度D.数组x的长度大于数组y的长度48.以下不能正确进行字符串赋初值的语句是()A.charstr[5]=good!;B.charstr[]=good!;B.char*str=good!;D.charstr[5]={‘g’,‘o’,‘o’,‘d’};49.以下程序的输出结果是()main(){charstr[]=ABCD,*p=str;printf(%d\n,*(p+4));}A.68B.'D'C.0D.'0'50.以下程序的输出结果是()main(){charstr[]=aeiou,*p=str;printf(%c\n,*p+4));}A.oB.uC.eD.f高职升本计算机基础复习材料—C语言精编100题7二、填空题51.一个C源程序至少应该有一个函数。52.以下程序运行后的输出结果是。main(){intx=2006,y=2007;printf(%d\n,(x,y));}53.(1)以下程序运行后的输出结果是。main(){inta=10;printf(%d,%o,%x\n,a,a,a);}(2)以下程序运行后的输出结果是。main(){inta,b,c;a=25;b=025;c=Ox25;printf(%d%d%d\n,a,b,c);}(3)以下程序运行后的输出结果是。main(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf(%d,%d\n,a,b);}54.(1)以下程序运行后的输出结果是。main(){charch='B';printf(%c%d\n,ch,ch);}(2)以下程序运行后的输出结果是。main(){charch='B';ch+=32;printf(%c\n,ch);}(3)以下程序运行后的输出结果是。main()高职升本计算机基础复习材料—C语言精编100