百科园c语言题库南信大第五章,C语言上机题库百科园第3章!南信大!.doc

253b171540df25e1b84436cbe50dfc72.gifC语言上机题库百科园第3章!南信大!.doc

第三章1.为表示关系xyz,应使用的表达式是A.xyyzB.xyzC.xyANDyzD.xy fori0; i3; i switchi case 1 printfd, i; case 2 printfd, i; default printfd, i; 执行后输出结果是A.011122B.120C.012020D.0123.对 for表达式1; ;表达式3 可理解为()。A.for表达式1;1;表达式3B.for表达式1;0;表达式3C.for表达式1;表达式1;表达式3D.for表达式1;表达式3;表达式34.若i为整型变量,则以下循环执行次数是()。fori2;i0; printfd,i;A.0次B.1次C.无限次D.2次5.有以下程序段int n0,p;do scanfd, n;whilep12345n3;此处do-while循环的结束条件是。A.p的值等于12345并且n的值大于等于3B.p的值不等于12345并且n的值小于3C.p的值不等于12345或者n的值小于3D.p的值等于12345或者n的值大于等于36.有以下程序段int n0,p;do scanfd, n;whilep12345n3;以下描述中正确的是()。A.do-while 循环中,根据情况可以省略 whileB.由于 do-while 循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句C.do-while 循环由do开始,用while结束,在 while表达式后面不能写分号D.在 do-while 循环体中,一定要有能使 while 后面表达式的值变为零假的操作7.执行语句 fori1;i4;; 后变量 i 的值是()。A.不定B.3C.4D.58.有以下程序main int a5, b4, c3, d2; ifabc printfdn,d; else ifc-1 d 1 printfdn,d1; else printfdn,d2; 执行后输出结果是A.2B.4C.编译时出错D.3mainint x1,a0,b0;switch x case 0 b; case 1 a; case 2 a;b; printfad,bd,a,b;该程序的输出结果是 A.2,2B.2,1C.1,1D.1,010.以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下main int n,k; float score,sum,ave; sum0.0; forn1;n10;n fork1;k4;k scanff, sumscore; avesum/4.0; printfNOdfn,n,ave; 上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是A.avesum/4.0B.sum0.0;C.sumscore;D.printfNOdfn,n,ave;11.运行以下程序后,输出的结果是main int k -3; ifk 0 printfn; else printfn;A.B.有语法错误不能通过编译C.D.12.下面的程序片断所表示的数学函数关系是y -1; ifx 0 y 1; ifx 0 y 1;else y 0;A.B.C.D.13.以下程序的输出结果是 main int x, i; fori 1; i 100; i x i;if x 2 0 if x 3 0 if x 7 0 printf“d “, x; printf“n”;A.28 70B.39 81 C.42 84D.26 6814.以下程序段中,与语句kabbc100;功能相同的是( )A.ifabbc k1; else k0; B.ifabbc k1; else k0;C.ifab k1;else ifbc k1;else k0;D.ifab k0;else ifbc k1;15.为了避免在嵌套的条件语句 if-else 中产生二义性,C语言规定else子句总是与()配对。A.其之后最近的ifB.其之前最近的ifC.缩排位置相同的ifD.同一行上的if16.t为int类型,进人下面的循环之前,t的值为0while t1 则以下叙述中正确的是。A.以上说法都不对B.循环控制表达式的值为1C.循环控制表达式的值为0D.循环控制表达式不合法17.以下程序段的输出结果是int k, j, s;fork 2; k 6; k, k s 1; forj k; j 6; j s j;printf“dn”, s;A.15B.10C.24D.918.语句whileE;中的表达式E等价于()。A.E1B.E 0C.E1D.E019.以下程序段的输出结果是int x 3;do pritnf“3d”, x-2; while x;A.死循环B.1 -2 C.3 0D.120.以下程序的运行结果是()。main int i1,sum0; whilei10 sumsum1;i; printfid,sumd,i,sum;A.i10,sum9B.运行出现错误C.i2,sum1D.i9,sum921.设有定义int a1,b2,c3;以下语句中执行效果与其它三个不同的是()A.ifab ca,ab,bc;B.ifab ca,ab,bc; C.ifab ca;ab;bc;D.ifab ca;ab;bc;22.以下程序中,while循环的循环次数是main int i0; whilei10 ifi1 continue; ifi5 break; i; A.死循环,不能确定次数B.6C.4D.123.选择结构中的条件与循环结构中循环成立的条件, 在写法上可以是任一表达式,但其值只能被判断为“真”或“假”。 哪个数作为逻辑“假”值()。A.-1B.非零的数C.1D.024.int a1,b2,c3; ifabab; ifacac; 则a的值为()。A.1B.不一定C.3D.225.有以下程序,若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是( )includestdio.hint mainint m,n,p;scanfmdndpd,printfdddn,m,n,p;return 0;A.m123 n456 p789B.m123n456p789C.123 456 789D.m123,n456,p78926.有以下程序main() int i1,j1,k2; ifjk)i)printf(d,d,dn,i,j,k);执行后输出结果是 A.2,2,2B.2,2,3C.1,1,2D.2,2,127.以下程序段的输出结果为()。 fori4;i1;i forj1;ji;j putchar;A.B.无C.D.28.有如下程序main() float x2.0,y;if(x0.0)y0.0;else if(x10.0)y1.0/x;else y1.0;printf(fn,y);该程序的输出结果是A.0.500000B.0.250000C.1.000000D.0.00000029.判断两个字符串是否相等,正确的表达方式是A.whiles1s2B.whiles1 s2C.whilestrcmps1,s20D.whilestrcmps1,s2 030.若x是int类型变量,以下程序段的输出结果是 forx 3; x 6; x printf x2“d”“dn”,x;A.B.C.D.31.C语言中,switch后的括号内表达式的值可以是A.只能为整型和字符型B.只能为整型C.任何类型D.只能为整型,字符型,枚举型32.设j和k都是int类型,则下面的for循环语句()。 forj0,k0;j9k876;j scanfd,A.最多执行9次B.循环体一次也不执行C.最多执行10次D.是无限循环33.int a3,b2,c1; ifabcab; else ac; 则a的值为()。A.2B.3C.1D.034.为了避免在嵌套的条件语句if-else中产生二义性,C语言规定else总与 配对A.同一行上的ifB.其之后最近的ifC.其之前最近的未配对的ifD.缩排位置相同的if35.以下不正确的if语句形式是()。A.ifxy x;y;B.ifxyxy;C.ifxy xy;D.ifxy scanfd,36.结构化程序设计所规定的三种基本控制结构是()。A.树形、网形、环形B.输入、处理、输出C.主程序、子程序、函数D.顺序、选择、循环37.以下程序的输出结果是main int y 10 for; y 0; y ify 3 0 pritnf“d”, y; continue; A.741 B.963C.875421D.852 38.以下程序的执行结果是main int x 0, s 0; while x 0 s x; printf d ,s ; A无限循环B.0C.1D.语法错误39.int a1,b2,c3; ifacba;ac;cb;则c的值为()。A.3B.2C.不一定D.140.以下叙述正确的是()。A.do-while语句构成的循环不能用其它语句构成的循环来代替.B.用do-while语句构成的循环,在while后的表达式为零时结束循环C.用do-while语句构成的循环,在while后的表达式为非零时结束循环.D.do-while语句构成的循环只能用break语句退出.41.假定所有变量均已正确定义,下列程序段运行后x的值是()。k11;k22;k33;x15;ifk1 x;else ifk2 x4; else x3;A.15B.14C.3D.442.有以下程序, 程序运行后的输出结果是 ( )include stdio.hint mainint i,j,m1;fori1;i3;i forj3;j0;j ifi*j3 break; m*i*j;printf“mdn”,m;return 0;A.m2B.m6C.m4D.m543.以下for循环的执行次数是 forx0,y0;y123x4;x;()。A.4次B.是无限循环C.3次D.循环次数不定44.下列程序的输出结果是()。 main int x1,y0,a0,b0; switchx case 1 switchy case 0a;break; case 1b;break; case 2a;b;break; case 3a;b;break; printfad,bdn,a,b; A.a2,b1B.a2,b2C.a1,b0D.a1,b145.有以下程序, 当执行程序时,按下列方式输入数据(从第1列开始,CR代表回车,注意回车也是一个字符)12CR34CR则输出结果是Binclude stdio.hint mainchar a,b,c,d;scanfcc,cgetchar; dgetchar;printfccccn,a,b,c,d;return 0;A.1234B.1234C.123D.1246.以下程序的运行结果是()。main int n; forn1;n10;n ifn30 continue; printfd,n; A.12B.12457810C.1234567890D.36947.C语言中 while 和 do-while 循环的主要区别是()。A.while的循环控制条件比 do-while的循环控制条件更严格B.do-while 的循环体至少无条件执行一次C.do-while 的循环体不能是复合语句D.do-while 允许从外部转到循环体内48.以下不是无限循环的语句为()。A.forxi;B.while1x;C.fory0,x1;xy;xi ix;D.fori10i sumi;49.从循环体内某一层跳出,继续执行循环外的语句是A.break语句B.return语句C.continue语句D.空语句50.下列程序的输出为()。main int y10; whiley; printfydn,y; A.while构成无限循环B.y0C.y-1D.y151.有以下程序,程序运行后的输出结果是 include stdio.hint mainint a1,b2;whilea6 ba;a2;b10;printf“d,dn”,a,b;return 0;A.5,11B.6,1C.7,11D.7,152.在以下给出的表达式中,与 dowhileE语句中的(E)不等价的表达式是()。A.E0B.E0E0C.E0D.E053.以下程序段的输出结果是int i, j, m 0;fori 1; i 15; i 4 forj 3; j 19; j 4 m;printf“dn”, m;A.15B.12C.20D.2554.执行下列语句后的输出为()。 int j-1; ifj1 printfn; else printfn;A.cB.有错,执行不正确C.D.55.以下程序的执行结果是_. main int num 0; while num 2 num; printf dnum ; A.1,2,3,B.1,2,3,4,C.1,2,D.0,1,256.下面程序的运行结果是include stdio.hmain() int y10;doy;while(y);printf(dn,y); A.0B.1C.8D.-157.若有定义语句int a,b;double x;则下列选项中没有错误是( )A.switchintx2case 0.0a;break; case 1.0b;break; defaulta;b;B.switchintx2case 0a;break; case 1b;break; defaulta;b; C.switchx2 case 0a;break; case 1b;break; defaulta;b; D.switchintx2.0case 0a;break; case 1b;break; defaulta;b;58.设a、b和c都是int变量,且a3,b4,c5;则以下的表达式中,值为0的表达式是A.abcb-cB.abC.abc1D.ab59.C 语言程序的三种基本结构是顺序结构、选择结构和结构.A.递归B.转移C.嵌套D.循环60.在下述程序中,判断i j共执行了多少次include stdio.hmain int i 0, j 10, k 2, s 0; for ; ; i k; ifi j printf“dn”, s; break; s i; A.4B.8C.6D.761.whilefabst1e-5ifs/10break;循环结束的条件是()。A.fabst1e-5s/10B.fabst1e-5C.t1e-5t-1e-5s-10s10D.s/10062.以下叙述正确的是A.用do-while构成循环时,只有在while后的表达式为非零时结束循环B.do-while语句构成的循环不能用其它语句构成的循环来代替。C.用do-while构成循环时,只有在while后的表达式为零时结束循环D.do-while语句构成的循环只能用break语句退出。63.以下程序的输出结果是main int i, sum; fori 1; i 6; i sum i; printf“dn” sum;A.15B.不确定 C.16D.064.有以下程序,程序运行后的输出结果是( )includestdio.hint main char b,c; int i;ba; cA;fori0;i6;i ifi2 putcharib; else putcharic; printfn;return 0;A.ABCDEFB.aBcDeFC.abcdefD.AbCdEf65.有如下程序main() int x1,a0,b0;switch(x)case 0 b;case 1 a;case 2 a;b;printf(ad,bdn,a,b);该程序的输出结果是A.a1,b1B.a2,b1C.a1,b0D.a2,b266.以下程序段中,能够正确地执行循环的是()。A.static int a; whileaB.int s6; do s-2; whiles;C.fori1;i10;iD.int s6; mifs100 exit0; else s-2; goto m判断char型变量c是否为大写字母的C的表达式是A.AcZB. AcANDZc C. cAcZD.cA switchx case 1switchy case 0a;break; case 1b;break; case 2a;b;break; case 3a;b;break; printfad,bdn,a,b;A.a2,b1B.a1,b0C.a2,b2D.a1,b1下面有关 for 循环的正确描述是()。A.for 循环是先执行循环循环体语句,后判断表达式B.在 for 循环中,不能用 break 语句跳出循环体C.for 循环只能用于循环次数已经确定的情况D.for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来假定所有变量均已正确定义,下面语句段执行后的x的值是a b c 0; x 35; ifa x; else ifb ; ifc x 3; else x 4;A.34B.4C.35D.3在C语言中,为了结束由while语句构成的循环,while后一对圆括号中表达式的值应该为()。A.1B.0C.TrueD.非0有以下程序,程序执行后的输出结果是 include stdio.hint mainint y10;whiley;printf“ydn”,y;return 0;A.y-1B.y1C.while构成无限循环D.y0有以下程序, 程序运行后的输出结果是( )include stdio.hint mainint a1,b0;ifa b;else ifa0 ifa b2;else b3;printfdn,b;return 0;A.3B.0C.1D.2有输入语句scanfad,bd,cd,double y3.141593;printf“d8.6f”,x,y;的输出结果是( )A.12,3.141593 B.12 3.141593C.123.141593D.123.1415930若变量已正确定义,有以下程序段i0;do printf“d,”,i; whilei;printf“dn”,i; 其输出结果是 ( )A.0,0B.程序进入无限循环C.1,1D.0,1下列条件语句中输出结果与其他语句不同的是( )A.if(a) printfdn,x; else printfdn,y;B.if(a0) printfdn,y; else printfdn,x;C.if(a0) printfdn,x; else printfdn,y;D.if(a0) printfdn,x; else printfdn,y;有以下程序,程序运行后的输出结果是 includestdio.hint main int x1,y0;ifx y;else ifx0if x y2;else y3;printfdn,y;return 0;A.3B.2C.0D.1有以下程序段char name20;int num;scanfnames numd,name;当执行上述程序,并从键盘输入nameLili num1001回车后,name的值( )A.Lili numB.nameLiliC.LiliD.nameLili num1001执行下列程序片段时输出的结果是( )。int x13,y5;printfd,xy/2;A.2B.3C.1D.0已知有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是( )。int a1,a2; char c1,c2;scanfdcdc,A.10A20BB.10A20 BC.10 A20BD.10 A 20 B若定义x为double型变量,则能正确输入x值的语句是( )。A.scanf5.1f,B.scanff,x;C.scanflf,D.scanff,以下程序段中的变量已正确定义fori0;i4;i,ifork1;k3;k printf“*”;程序段的输出结果是 A.B.C.D.*有以下程序段,以下叙述中正确的是( )int main while getcharn; A.此while语句将无限循环B.当执行此while语句时,只有按回车键程序才能继续执行C.当执行此while语句时,按任意键程序就能继续执行D.getchar不可以出现在while语句的条件表达式中有以下程序程序运行后的输出结果是 include stdio.hint main int a7;whilea;printfdn,a;return 0;A.-1B.1C.0D.7if语句的基本形式是if表达式语句,以下关于表达式值的叙述中正确的是( )A.必须是正数B.可以是任意合法的数值C.必须是整数值D.必须是逻辑值设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是 A.nx; printfdn,n;B.nx; printfdn,n;C.x; printfdn,x;D.x; printfdn,x;若有定义int a,b;,通过语句scanf“d;d”,,能把整数3赋给变量a,5付给变量b的输入数据是 A.3,5B.3 5C.3;5D.35有以下程序include stdio.hint mainint a1,a2; char c1,c2;scanfdcdc,printfd,c,d,c,a1,c1,a2,c2;return 0;若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是12,a,34,b则正确的输入格式是(以下_代表空格,CR代表回车)A.12,a,34,bCRB.12_a34_bCRC.12a34bCRD.12_a_34_bCR有以下程序,程序运行后的输出结果是 include stdio.hint mainint a1,b2;for;a8;a ba;a2;printf“d,dn”,a,b;return 0;A.8,11B.7,11C.9,18D.10,14若i和k都是int类型变量,有以下for语句fori0,k-1;k1;k printf*n;下面关于语句执行情况的叙述中正确的是 ( )A.构成无限循环B.循环体一次也不执行C.循环体执行两次D.循环体执行一次程序设计/*编写函数fun,它的功能是求n以内不包括n同时能被5与11整除的所有自然数之和的平方根s,并作为函数值返回。例如,n为1000时,函数值应为s96.979379。注意部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序*/include math.hinclude stdio.hincludestdlib.hdouble funint n/*Begin* End /void main FILE *wf;printfsfn, fun1000; wfdebugout6.dat,w; fprintfwf,lf,fun1000;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值