-1-C语言基础练习100题(含答案)雷柳青编排1、下面程序的输出是________#includestdio.hvoidmain(){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=b2、在下列选项中,不正确的赋值语句是________.A)++t;B)n1=(n2=(n3=0));C)k=i=j;D)a=b+c=1;3、下面合法的C语言字符常量是__________.A)'\t'B)AC)65D)A4、字符(char)型数据在微机内存中的存储形式是____.A)反码B)补码C)EBCDIC码D)ASCII码5、设inta=12,则执行完语句a+=a-=a*a后,a的值是________A)552B)264C)144D)-2646、执行下面程序中的输出语句后,输出结果是______.#includestdio.hvoidmain(){inta;printf(%d\n,(a=3*5,a*4,a+5));}A)65B)20C)15D)107、下面程序的输出是__________.#includestdio.hvoidmain(){intx=023;printf(%d\n,--x);}A)17B)18C)23D)248、下面程序的输出是___________.#includestdio.hvoidmain(){charch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf(%d,%c\n,ch1,ch2);}A)67,DB)B,CC)C,DD)不确定的值9、以下程序的输出结果是________.#includestdio.hvoidmain(){intx=10,y=10;printf(%d%d\n,x--,--y);}A)1010B)99C)910D)10910、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf(%d,(x,y));上面程序片段的输出结果是_______.A)200B)100C)100200D)输出格式符不够,输出不确定的值11、阅读下面的程序#includestdio.hvoidmain(){inti,j;i=010;j=9;printf(%d,%d,i-j,i+j);}则程序的运行结果是________.A)1,19B)-1,19C)1,17D)-1,1712、阅读下面的程序#includestdio.hvoidmain(){inti,j,m,n;i=8;j=10;m=++i;n=j++;printf(%d,%d,%d,%d,i,j,m,n);}程序的运行结果是_________.A)8,10,8,10B)9,11,8,10C)9,11,9,10D)9,10,9,11-2-13、若已定义inta,则表达式a=10,a+10,a++的值是___.A)20B)10C)21D)1114、阅读下面的程序#includestdio.hvoidmain(){inti,j;scanf(%3d%2d,&i,&j);printf(i=%d,j=%d\n,i,j);}如果从键盘上输入1234567回车,则程序的运行结果是________.A)i=123,j=4567B)i=1234,j=567C)i=1,j=2D)i=123,j=4515、下面程序的输出结果是________.#includestdio.hvoidmain(){inta=-1,b=4,k;k=(++a=0)&&(b--=0);printf(%d,%d,%d\n,k,a,b);}A)1,1,2B)1,0,3C)0,1,2D)0,0,316、下面程序的输出结果是_______.#includestdio.hvoidmain(){inta=5,b=3;floatx=3.14,y=6.5;printf(%d,%d\n,a+b!=a-b,x=(y-=6.1));}A)1,0B)0,1C)1,1D)0,017、若有以下定义和语句:inta=010,b=0x10,c=10;printf(%d,%d,%d\n,a,b,c);则输出结果是_________.A)10,10,10B)8,16,10C)8,10,10D)8,8,1018、已知有double型变量x=2.5,y=4.7,整型变量a=7,则表达式x+a%3*(int)(x+y)%2/4的值是_________.A)2.4B)2.5C)2.75D)019、设有以下语句:intx=10;x+=3+x%3,则x的值是._________A)14B)15C)11D)1220、若d为double型变量,则表达式d=1,d+5,d++的值是_______.A)1B)6.0C)2.0D)1.021、若有定义inta=12,n=5,则表达式a%=(n%2)运算后,a的值__________.A)0B)1C)12D)622、若有定义intx=3,y=2和floata=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是____.A)0B)2C)1.5D)123、在C语言中,以下叙述不正确的是________.A)在C程序中,无论是整数还是实数,都能被准确无误的表示B)在C程序中,变量名代表存储器中的一个位置C)静态变量的生存期与整个程序的生存期相同D)C语言中变量必须先定义后引用24、设a为整型变量,不能正确表达数学关系10a15的C语言表达式是________.A)10a15B)a==11||a==12||a==13||a==14C)a10&&a15D)!(a=10)&&!(a=15)25、如果c为字符型变量,判断c是否为空格不能使用________.(假设已知空格ASCII码为32)A)if(c=='32')B)if(c==32)C)if(c=='\40')D)if(c=='')26、执行下面程序时,若从键盘输入2CR,则程序的运行结果是________.#includestdio.hvoidmain(){intk;charcp;cp=getchar();if(cp='0'&&cp='9')k=cp-'0';elseif(cp='a'&&cp='f')k=cp-'a'+10;elsek=cp-'A'+10;printf(%d\n,k);}A)2B)4C)1D)1027、执行下面程序后,运行结果是________.#includestdio.hvoidmain(){intx=41,y=1;if(x%3==0&&x%7==0){y+=x;printf(y=%d\n,y);}else-3-{y=x;printf(y=%d,y);}}A)y=41B)y=43C)y=42D)y=128、运行下面程序时,从键盘输入12,34,9CR,则输出结果是______.#includestdio.hvoidmain(){intx,y,z;scanf(%d,%d,%d,&x,&y,&z);if(xy)if(yz)printf(%d\n,z);elseprintf(%d\n,y);elseif(xz)printf(%d\n,z);elseprintf(%d\n,x);}A)34B)12C)9D)不确定的值29、运行下面程序时,从键盘输入字母H,则输出结果是________.#includestdio.hvoidmain(){charch;ch=getchar();switch(ch){case'H':printf(Hello!\n);case'G':printf(Goodmorning!\n);default:printf(Bye_Bye!\n);}}A)Hello!B)Hello!GoodMorning!C)Hello!D)Hello!Goodmorning!Bye_Bye!Bye_Bye!30、执行下列程序段后的输出结果是_________.intx=1,y=1,z=1;x+=y+=z;printf(%d\n,xy?y:x);A)3B)2C)1D)431、设ch是char型变量,值为'A',则表达式ch=(ch='A'&&ch='Z')?ch+32:ch的值是_____.A)ZB)aC)zD)A32、下面程序的输出结果是________.#includestdio.hvoidmain(){intx=8,y=-7,z=9;if(xy)if(y0)z=0;elsez-=1;printf(%d\n,z);}A)8B)1C)9D)033、运行下面程序时,若从键盘输入3,4CR,则程序的输出结果是_______.#includestdio.hvoidmain(){inta,b,s;scanf(%d,%d,&a,&b);s=a;if(sb)s=b;s=s*s;printf(%d\n,s);}A)14B)16C)18D)2034、下列程序的执行结果是_________.#includestdio.hvoidmain(){intx=0,y=1,z=0;if(x=z=y)x=3;printf(%d,%d\n,x,z);}A)3,0B)0,0C)0,1D)3,135、能够完成如下函数计算的程序段是______.┌-1x0y=┤0x=0└1x0A)y=1;B)if(x=0)if(x!=0)if(x0)y=1;if(x0)y=1;elsey=0;elsey=0;elsey=-1;C)y=0;D)y=-1;if(x=0)if(x0)y=1;if(x0)y=1;elsey=0;elsey=-1;36、以下程序的执行结果是________.#includestdio.hvoidmain(){intx=1,y=0;switch(x)-4-{case1:switch(y){case0:printf(first\n);break;case1:printf(second\n);break;}case2:printf(third\n);}}A)firstB)firstsecondthirdC)firstD)secondthird37、以下程序的执行结果是________.#includestdio.hvoidmain(){inta,b,c,d,x;a=c=0;b=1;d=20;if(a)d=d-10;elseif(!b)if(!c)x=15;elsex=25;printf(d=%d\n,d);}A)d=20B)d=10C)d=15D)2538、下列程序执行后的输出结果是________.#includestdio.hvoidmain(){intx,y=1,z;if((z=y)0)x=4;elseif(y==0)x=5;elsex=6;printf(%d,%d\n,x,y);}A)4,1B)6,1C)5,0D)出错信息39、有如下程序#includestdio.hvoidmain(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf(a=%d,b=%d\n,a,b);}该程序的输出结果是__________.A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=240、下面程序的输出结果是_________.#includestdio.hvoidmain(){inta=-1,b=1,k;if((++a0)&&(b--=0))printf(%d%d\n,a,b);elseprintf(%d%d\n,b,a);}A)-11B)01C)10D)0041、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(wx)?w:x;m=