还剩10页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
语言基础练习题(含答案)C100雷柳青编排
1、下面程序的输出是ch2=A+6-3;#includestdio.h printf%d,%c\n”,chl,ch2;void main}{int k=l1;不确定的值A67,D BB,C CC,D Dprintf,k=%d,k=%o,k=%x\n,,k,k,k;、以下程序的输出结果是.9#includestdio.hA k=ll,k=12,k=11B k=11,k=13,k=13void mainC k=ll,k=013,k=0xb D k=11,k=13,k=b{int x=10,y=10;printfn%d%d\nH,x-,-y;、在下列选项中,不正确的赋值语句是.2A++t;B n1=n2=n3=0;A1010B99C910D109C k=i=j;D a=b+c=1;、若和都是型变量且有下面的程10x yint,x=100,y=200,序片段、下面合法的语言字符常量是.3Cprintf”%d”,x,y;A\t‘BA”C65DA上面程序片段的输出结果是.A200B
100、字符型数据在微机内存中的存储形式是—.4char反码补码码码输出格式符不够,输出不确定的值A BC EBCDIC D ASCHC100200D
5、设int a=12,则执行完语句a+=a-=a*a后,a的值是
11、阅读下面的程序#includestdio.hA552B264C144D-264void main、执行下面程序中的输出语句后,输出结果是6int ij;#includestdio.h i=010;void mainj=9;{int a;printf”%d,%d”,i-j,i+j;printf%d\n”,a=3*5,a*4,a+5;则程序的运行结果是.A65B20C15D10A1,19B-l,19C1,17D-l,
177、下面程序的输出是.、阅读下面的程序12#includestdio.h#includestdio.hvoid mainvoid main{int x=023;{printf,,%d\n,1,-x;int i,j,m,n;A17B18C23D
248、下面程序的输出是.i=8;j=10;m=++i;#includestdio.hvoid mainn=j++;{char chl,ch2;printf”%d,%d,%d,%d”,i,j,m,n;chl=A+5-3;程序的运行结果是.A8,10,8,10B9,11,8,10C9,11,9,10D9,10,9,11答题卡班级姓名得分123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100参考答案1〜5DDADD6〜10BBADA11-15DCDDD15-20ABBAD21-25ADAAA26-30AAACA31-35BCBDB36-40BABAC41-45DDBAA46-50CDBAC51-55CCBCB56-60BCBBD61-65DBDBC66-70ADDBC71-75CBDDD76-80BCABD81-85ACBBD86-90CCDCA91-95BDCBD96-100CCADB
13、若已定义int a,则表达式a=10,a+10,a++的值是.式:x+y%2+inta/intb的值是.A20B10C21D11A0B2C
1.5D
1、阅读下面的程序
14、在语言中,以下叙述不正确的是.23C#includestdio.h在程序中,无论是整数还是实数,都能被精确无误的A Cvoid main表示int i,j;在程序中,变量名代表存储器中的一个位置B Cscanfn%3d%2dn,i,j;静态变量的生存期与整个程序的生存期相同Cprintfni=%d,j=%d\n\i,j;}语言中变量必需先定义后引用D C假如从键盘上输入〈回车〉,则程序的运行结1234567果是.、设为整型变量,不能正确表达数学关系的24a10a15语言表达式是.A i=123,j=4567B i=1234,j=567CCi=l,j=2Di=123,j=45A10a15B a==l l||a==12||a==13||a==14C}a10a15D!a=10!a=
15、下面程序的输出结果是.15#includestdio.h
25、假如c为字符型变量,推断c是否为空格不能运void main用.假设已知空格ASCII码为32int a—1,b=4,k;A ifc==32B ifc==32k=++a=0b—=0;printfn%d,%d,%d\n;k,a,b;C ifc==\40D ifc==
26、执行下面程序时,若从键盘输入2CR”,则程序的A1,1,2B1,0,3C0,1,2D0,0,3运行结果是.#include stdio.h void main{int k;char cp;、下面程序的输出结果是.16cp=getchar;if cp=0cp=9k=cp-0;else if#includestdio.hcp=,acp=T k=cp-!a+10;else k=cp-A+10;void main printf%d\nk;int a=5,b=3;float x=
3.14,y=
6.5;A2B4C1D10printfH%d,%d\n,a+b!=a-b,x=y-
6.1;、执行下面程序后,运行结果是.27A1,0B0,1C1,1D0,0#include stdio.h void main{int x=41,y=l;ifx%3==0x%7==0{y+=x;printfny=%d\n\y;}else、若有以下定义和语句17int a=010,b=0xl0,c=10;printfn%d,%d,%d\nn,a,b,c;则输出结果是.、已知有A10,10,10B8,16,10C8,10,10D8,8,1018型变量乂=丫=整型变量则表达式double
2.5,
4.7,a=7,的值是.x+a%3*intx+y%2/4A
2.4B
2.5C
2.75D
0、设有以下语句:则的值是.19int x=10;x+=3+x%3,xA14B15C11D12若为型变量,则表达式的值是.20d doubled=l,d+5,d++A1B
6.0C
2.0D
1.0若有定义则表达式运算后,21int a=12,n=5,a%=n%2a的值______________.A0B1C12D6若有定义和白=则表达22int x=3,y=2float2=
2.
53.5,{y=x;printfny=%dn,y;}{int x=8,y=-7,z=9;if xyA y=41By=43C y=42Dy=l ify0z=0;else z-=l;、运行下面程序时,从键盘输入〉\则输28”12,34,9CRprintfn%d\nH,z;出结果是.#include stdio.h C9D0A8B1void main{int x,y,z;
33、运行下面程序时,若从键盘输入”3,程4CR\则序的输出结果是.scanfM%d,%d,%dM,x,y,z;#include stdio.hif xyifyzprintf,%d\n,,z;void mainelse printfn%d\nn,y;{int a,b,s;else if xzprintfM%d\nn,z;scanf%d,%d”,a,b;else printfn%d\nn,x;s=a;if sbs=b;A34B12C9D不确定的值s=s*s;printf%d\n”,s;、运行下面程序时,从键盘输入字母则输出结果29H,是.D20A14B16C18#include stdio.hvoid main
34、下列程序的执行结果是{char ch;#include stdio.hch=getchar;void mainswitchch{intx=0,y=l,z=0;{case,H,:printfnHello!\nH;if x=z=yx=3;case,G,:printfnGood morning!\nn;printfn%d,%d\nn,x,z;default:printfnBye__Bye!\n,;A3,0B0,0C0,1D3,l、能够完成如下函数计算的程序段是35A Hello!B Hello!Good Morning!r-1x0C Hello!D Hello!y=T0x=0Good morning!Bye_Bye!L1x0Bye_Bye!Ay=l;B ifx=0ifx!=0ifx0y=1;、执行下列程序段后的输出结果是.30ifx0y=l;else y=0;elseint x=l,y=l,z=l;else y=0;y-1;x+=y+二z;C y=0;D y=-l;if x=0if x0y=l;printfn%d\nn,xyy:x;if x0y=l;else y=0;A3B2C1D4else y-1;、设是型变量,值为则表达式31ch charA,ch=ch=A的值是.ch=Zch+32:chAZ BaCz DA
36、以下程序的执行结果是#include stdio.h、下面程序的输出结果是.32void main{int x=l,y=0;switch x#include stdio.hvoid maincase1:switch yprintfn%d%d\n”,b,a;case O:printfHfirst\nn;break;case1:printfnsecond\nH;break;A-l1B01C10D00假定、、、、均为型变量,有如下程case2:printfMthird\nM;41w xy zm int序段w=l;x=2;y=3;z=4;A firstB firstm=wxw:x;m=mym:y;m=mzm:z;second third则该程序段执行后,的值是.mC firstD secondA4B3C2D1third、以下程序的输出结果是.、以下程序的执行结果是.4237main#include stdio.h void main{int a=100;{int a,b,c,d,x;ifa100printfn%d\nn,a100;a=c=0;else printfn%d\n,\a=100;b=l;d=20;Aa=100B100C0D1if ad=d-10;else if!bif!c x=15;、若执行下面的程序从键盘上输入则输出结果439,else x=25;是._____________printfnd=%d\n;d;#include stdio.hAd=20Bd=10Cd=15D25void main、下列程序执行后的输出结果是.38{int n;#include stdio.h void mainscanfH%dn,n;{int x,y=l,z;if n++10printfn%d\nn,n;if z=y0x=4;else printfn%d\nn,n—;}else ify==0x=5;A11B10C9D8else x=6;printfn%d,%d\nn,x,y;、以下程序段运行结果是.44出错信息A4,1B6,l C5,0Dint x=l,y=l,z—1;x+=y+=z;、有如下程序39printf,,%d\n,,xyy:x;#include stdio.h void main A1B2C4D不确定的值{int x=l,a=0,b=0;switchxcase0:b++;、有以下程序45case1:a++;#include stdio.hvoid maincase2:a++;b++;{int a,b,c=246;a=c/100%9;printfn a=%d,b=%d\nn,a,b;b=-l-l;}printfn%d,%d\nn,a,b;该程序的输出结果是.A a=2,b=1B a=l,b=l C a=l,b=0D a=2,b=2输出结果是.
40、下面程序的输出结果是.A2,1B3,2C4,3D2,-1#include stdio.h
46、运行下面程序时,若从键盘输入数据为“123”,则输void main出结果是.{int a=-l,b=l,k;if++a0b--=0#include stdio.hprintfn%d%d\nn,a,b;void mainelse{int num,place;if a=a+b printf****\n”;else printf####\nn;scanfH%dn,num;if num99有语法错误不能编译Aplace=3;B能通过编译,但不能通过连接else ifnum9C输出****place=2;D输出####elseplace=1;
51、为了避开嵌套的if-else语句的二义性,C语言规定总是与组成配对关系.i=num/100;else缩排位置相同的j=num-i*100/10;A if在其之前未配对的k=num-i*100-j*10;B if在其之前尚未配对的最近的switch place C if{case3:printfC,%d%d%d\nn,k,j,i;D同一行上的ifbreak;、以下程序段.case2:printfn%d%d\nn,kj;52break;X—1;case1:printfn%d\nn,k;do X=x*x;}while!x;A123B1,2,3C321D3,2,1是死循环循环执行两次A B循环执行一次有语法错误C D、执行下列程序后的输出结果是.47#include stdio.h、对下面程序段描述正确的是.53void mainint x=0,s=0;{int k=4,a=3,b=2,c=l;while!x!=0s+=++x;printfn%d\n,kak:cbc:a;printfn%dH,s;运行程序段后输出A0A4B3C2D1运行程序段后输出B1程序段中的限制表达式是非法的C、以下条件表达式中能完全等价于条件表达式中48ifx程序段循环多数次D的的是.xAx==0Bx!=0Cx==l D x!=l、下面程序段的输出结果是.54x=3;、若运行下面程序时,给变量输入则输出结果是.49a15,do{y=x-;#include stdio.hif!y{printfH*n;continue;}printfn#n;void main}whilex=2;{int a,b;死循环输出错误信息A##B##*C Dscanfn%dH,a;、下面程序的运行结果是.55b=a15a+10:a-10;#includestdio.hprintfn%d\nH,b;voidmain{inta=l,b=10;A5B25C15D10do二{b-a;a++;、执行下面程序的输出结果是.50}whileb—0;#include stdio.hprintfH%d,%d\nH,a,b;voidmain{int a=5,b=0,c=0;A3,11B2,8C1,-1D4,
956、下面程序段的运行结果是.}whilei2;int n=0;printf%d\n”,j;while n++v=2printf,%d,1,n;A50B52C51D8错误信息、下面程序段的运行A012B123C234D
57、有如下程序64结果是.#includestdio.h voidmainint x=0,y=0;{int x=23;dowhile x15y++,x+=++y;{printfn%dH,x-;printfn%d,%dn,y,x;}while!x;A20,7B6,12C20,8D8,
20、下面程序的运行结果是.58该程序的执行结果是#includestdio.hA321B23voidmain不输出任何内容陷入死循环C D{int s=0,i=l;while s=10{s=s+i*i;i++;}、以下程序段的执行结果是.65printfn%dH,-i;int ij,m=O;fori=l;i=15;i+=4A4B3C5D6forj=3;j=19;j+=
4、下面程序段的运行结果是.m++;59forx=10;x3;x—printfH%d\n\m;{ifx%3x-;--X;-X;printfH%d”,x;A12B15C20D25A63B74C62D
73、下面程序的输出结果是.
66、下面程序的运行结果是.60#includestdio.h#includestdio.h voidmainvoid main{int a,b;{int i;a=-l;fori=l;i6;i++b=0;do{{ifi%2!=0{printf,#,;continue;}printfn*n;++a;++a;printf,\nn;十二b a;}whilea9;printfH%d\nn,b;A#*#*#B#####C*****D*#*#*A34B24C26D
25、下面程序段的运行结果是.
61、下面程序的输出结果是.67fori=l;i=5;printfn%dn,i;i++;#includestdio.h无限循环A12345B1234C15Dvoid main{int x=10,y=10,i;
62、下面程序的输出结果是___________.fori=0;x8;y=++i printfM%d%d n,x-,y;#includestdio.h voidmain{int n=4;A10192B9876while n—printfn%d\n—;C10990D101091A20B31C321D
21068、执行以下程序后,输出的结果是.#includestdio.h、以下程序运行后的输出结果是.63voidmain#includestdio.h voidmain{int y=10;{int i=10,j=0;do{y-;}do while—y;{j=j+l;i--;printfn%d\nn,y—;A-l B1C8D0k++;if k%2==0{a=a+k;continue;}b=b+k;、有如下程序69a=a+k;#includestdio.h voidmainprintf!,k=%d a=%d b=%d\nn,k,a,b;{int n=9;A k=5a=10b=4B k=3a=6b=4whilen6{n--;printf”%d”,n;}Ck=4a=10b=3Dk=4a=10b=
4、执行下面程序段后,的值是.74k该程序段的输出结果是.int i,j,k;A987B876C8765D9876fori=0j=10;ij;i++J-、有如下程序70k=i+j;#includestdio.hA9B11C8D10voidmain{int i,sum=0;、以下程序的功能是:从键盘上输入若干个学生的成果,75fori=l;i=3;sum++sum+=i;统计并输出最高成果和最低成果,当输入负数时结束输printf%d\n,sum;入请填空#includestdio.h该程序的执行结果是.voidmain死循环A6B3CD0{float x,amax,amin;scanfH%f;x;
71、以下循环体的执行次数是amax=x;#includestdio.hamin=x;void mainwhile{int ij;{if xamaxamax=x;fori=0,j=l;i=j+l;i+=2,j-printfH%d\nn,i;ifamin=x;scanfn%f;x;A3B2C1D0printfn\namax=%f\namin=%f\nn,amax,amin;、在执行以下程序时,假如从键盘上输入回72ABCdef车,,则输出为.A x=0Bx0Cx0Dx=0xamin x=amin xamin#include stdio.hxaminvoid main{char ch;、阅读以下程序,程序运行后的输出结果是.76while ch=getchar!=\n#includestdio.h{if ch=Ach=Z ch=ch+32;void mainelseif ch=ach,z,ch=ch-32;{int x;printfH%cn,ch;forx=5;x0;x—}ifx-5printfn%d,n,x;printfn\nu;elseprintf%dj,x++;}A4,3,2B4,3,1,C5,4,2D5,3,1,、以下程序段的输出结果是.77A ABCdefB abcDEFC abcD DEFintk,n,m;、下面程序的输出结果是.73n=10;m=l;k=l;main while k=n{m*=2;k+=4;}printfn%d\n;m;A4B16C8D32int i,k=0,a=0,b=0;、语句中的条件等价于.fori=l;i=4;i++78while!e;!eA e==0B e!=l Ce!=0D〜eC char a={string};D chara[]={0,123,4,5};、给出以下定义
86、以下叙述正确的是.79char x[]=nabcdefgn;A continue语句的作用是结束整个循环的执行chary[]={ab,cde,f,g};只能在循环体内和语句体内运用语句则正确的叙述为.B switchbreakC在循环体内运用break语句或continue语句的作用相A数组x和数组y等价同B数组x和数组y的长度相同D从多层循环嵌套中退出时,只能运用goto语句
80、C数组x的长度大于数组y的长度在下列选项中,没有构成死循环的程序段是—.D数组x的长度小于数组y的长度A int i=100;B for;;;、定义如下变量和数组while187{i=i%100+1;int i;if i100break;intx
[4]
[4]={1,2,34,5,6,7,8,9,10,11,12,13,14,15,16;则下面语句的输出结果是.C intk=1000;D ints=36;fori=0;i4;i++printf%3d”,x[i][3-i];do{++k;}whilek=1000;while s—s;A15913B161116C471013D
481216、下面程序的输出结果是.81#includestdio.h、下面程序输出的结果是.88voidmain#include stdio.h{int i;void mainfori=l;i=5;i++{int i,j,x=O;叫{ifi%2printf elsecontinue;static int a
[6]={1,2,3,4,5,6};fori=0,j=l;i5;++ij++x+=a[i]*a[j];}printf%d\n”,x;printfn$\nn;数组中首尾的对应元素的乘积A aA*#*#*#$B#*#*#*$C#*#*$D*#*#$数组中首尾的对应元素的乘积之和B a数组中相邻各元素的乘积C a、下面程序段中,循环体的执行次数是.82数组中相邻各元素的乘积之和D aint a=10,b=0;、若有以下说明89do{b+=2;a-=2+b;}whilea=0;则以下对数组元char si[]={tree},s2[]={flower*;,A4B5C3D2素或数组的输出语句中,正确的是、若为整型变量,则以下循环语句的循环次数是83iA printfn%s%sn,sl
[5],s2
[7];fori=2;i==0;Bprintfn%c%cn,sl,s2;printfn%dn,i-;C putssl;putss2;D putssl,s2;无限次次次次A B0C1D
2、运行下面程序段的输出结果是.90char s1
[10]={SdWuTpAO};printfn%s\sl;、对于表达式表达式可理解为.84for1;;3A SetB SetupC Setup DSnenf表达式表达式A for1;0;3表达式表达式B for1;1;
3、以下程序段的输出结果是.91表达式表达式表达式C for1;1;3char s[]=Han apple”;printf%d\nn,strlens;表达式表达式表达式D for1;3;3A7B8C9D
10、合法的数组定义是.
8592、若有说明:charc
[10]={,E,;a,;s,;t\,\0,};,则下述说法A int a
[6]={string1};B inta
[5]={0,1,2,3,4,5};中正确的是.不行引用可引用,但值不确定A c
[7]B c
[6]不行引用可引用,其值为空字符Cc
[4]Dc
[4]、若有说明」,则对元素的非法93char c
[7]={C,t,T h,g};引用是____________.、如有说明A c
[0]B c[9-6]Cc[4*2]D c[2*3]94char,要给数组和整体赋值,下列语句中正sl
[5],s2
[7];si s2确的是.A sl=getchar;s2=getchar;Bscanfn%s%sn,sl,s2;C scanfu%c%cn,sl,s2;D getssl,s2;、以下程序输出的结果是.95#include stdio.hvoid main{char str[]=nla2b3cn;inti;fbri=O;str[i]!=,\O,;i++ifstr[i]=,0,str[i]=,9printfn%cn,str[i];printfn\nn;A123456789BIa2b3c CabcD
123、以下程序输出的结果是.96#include stdio.hvoid main{inta[]={5,4,3,2,l},ij;long s=0;fori=0;i5;i++s=s*10+a[i];printfns=%ld\nn,s;A s=12345Bs=54321以上都不对Cs=54321D、在定义后,数组中的第个元素是.设97inta
[5]
[6];a10⑼⑼为第一个元素aA a
[2]
[5]B a⑵
[4]Ca[l]
[3]D a[l]
[5]、当接受用户输入的含有空格的字符串时,应运用98________函数.、以下一维数A getsB getcharC scanfD printf99组的正确定义是.aA inta10;B}int n=10,a[n];C intn;D#define SIZE10scanf%d”,n;inta[SIZE];inta[n];、以下对二维数组进行正确初始化的是.100aA inta
[2]
[3]={{1,2},{3,4},{5,6}};B inta[]
[3]={1,2,345,6};C inta⑵[]={1,2,345,6};D inta
[2][]={{1,2},{3,4}};。