收藏 分享(赏)

MOOC C语言学习辅导与习题课-北京化工大学 中国大学慕课答案.pdf

上传人:小肥粒 文档编号:21458119 上传时间:2024-03-06 格式:PDF 页数:44 大小:192.01KB
下载 相关 举报
MOOC C语言学习辅导与习题课-北京化工大学 中国大学慕课答案.pdf_第1页
第1页 / 共44页
MOOC C语言学习辅导与习题课-北京化工大学 中国大学慕课答案.pdf_第2页
第2页 / 共44页
MOOC C语言学习辅导与习题课-北京化工大学 中国大学慕课答案.pdf_第3页
第3页 / 共44页
MOOC C语言学习辅导与习题课-北京化工大学 中国大学慕课答案.pdf_第4页
第4页 / 共44页
MOOC C语言学习辅导与习题课-北京化工大学 中国大学慕课答案.pdf_第5页
第5页 / 共44页
亲,该文档总共44页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、MOOC C 语言学习辅导与习题课语言学习辅导与习题课-北京化工大学北京化工大学 中国大学慕课答案中国大学慕课答案第一章第一章 OJ编程题编程题第一章第一章 测验测验客观题客观题1、问题:下列变量名中合法的是:选项:A、3a6b B、B.C.TomC、_6a7bD、$ABC正确答案:【_6a7b】2、问题:正确的定义变量的语句是:选项:A、int ab_;B、int ab;C、char mmD、float a3.b;正确答案:【int ab_;】3、问题:以下合法的 C 语言字符常量是:选项:A、”a”B、tC、65D、a 正确答案:【t】4、问题:下列都是合法转义字符的选项是:选项:A、nB

2、、017”C、018 f xabD、0101x1f正确答案:【n】5、问题:以下语句:temp=x;x=y;y=temp;的功能是:选项:A、把 x,y,temp从小到大排列;B、把 x,y,temp 从大到小排列;C、交换 x,y的值;D、无确定的结果。正确答案:【交换 x,y的值;】6、问题:若已定义 x和 y 为 double类型,则表达式:x=1,y=x+3/2的值是:选项:A、1B、2C、2.0D、2.5正确答案:【2.0】7、问题:以下程序的输出结果是:#includestdio.h intmain()inta=12,b=12;printf(%d%dn,-a,b+);return0

3、;选项:A、10 11B、11 13C、11 10D、11 12正确答案:【11 12】8、问题:以下不是合法的 C语言常量的是:选项:A、0 x5CB、5e2.8C、031D、“123”正确答案:【5e2.8】9、问题:在 Dev-c+环境中,float类型的数据需要占用()字节内存空间选项:A、1B、2C、4D、8正确答案:【4】10、问题:若有以下定义和语句:charc1=b,c2=e;printf(%d,%cn,c2-c1,c2-a+A);则输出结果是:选项:A、2,MB、3,EC、2,ED、输出项与对应的格式控制不一致,输出结果不确定正确答案:【3,E】11、问题:有以下程序#inc

4、lude#includestdio.h intmain()inta,c=246;a=c/10%10;printf(%d,a);return0;输出结果是:选项:A、2B、4C、6D、9正确答案:【4】12、问题:设 x、y、z和 k 都是 int 型变量,则执行表达式 x=(y=4,z=16,k=32)后,x 的值为:选项:A、4B、16C、32D、52正确答案:【32】13、问题:可在 C语言中用作用户标识符的一组标识符是:选项:A、void define wordB、as _b3_123 ffC、for_abccaseD、2cdosig正确答案:【as _b3_123 ff】14、问题:下

5、列变量定义语句中错误的是:选项:A、int MBK_doB、char dog1C、float _sky D、int 2ab 正确答案:【int 2ab】15、问题:能正确表示“当 x的取值在1,10或100,110范围内为真,否则为假”的表达式是:选项:A、(x=1)(x=10)(x=100)(x=110)B、(1=x=10)|(100=x=110)C、(x=1)(x=10)|(x=100)(x=110)D、(x=1)|(x=10)(x=100)|(x=110)正确答案:【(x=1)(x=10)|(x=100)(x=110)】16、问题:C语言中,运算对象必须是整型的运算符是:选项:A、%B、

6、/C、%和/D、*正确答案:【%】17、问题:以下不合法的用户标识符是:选项:A、j2_KEYB、dobuleC、4dD、_8_正确答案:【4d】18、问题:以下程序的输出结果是:#includestdio.h intmain()intk=17;printf(%d,%o,%xn,k,k,k);return0;选项:A、17,021,0 x11B、17,17,17C、17,0 x11,021D、17,21,11正确答案:【17,21,11】19、问题:已知:int x,y;float z;则以下输入语句错误的是:选项:A、scanf(%d,%d,%f,x,y,z);B、scanf(%d%d%f,

7、x,y,z);C、scanf(%d%d%f,x,y,z);D、scanf(%d%d%6.2f,x,y,z);正确答案:【scanf(%d%d%6.2f,x,y,z);】20、问题:可在 C语言中用作用户标识符的一组标识符是:选项:A、voiddefinewordB、as_b3_123ffC、for_abccaseD、2cdosig正确答案:【as_b3_123ff】21、问题:以下程序运行的结果是:#includestdio.h intmain()intm=5,n=10;printf(%d,%dn,m+,-n);return0;选项:A、5,9B、6,9C、5,10D、6,10正确答案:【5,

8、9】22、问题:根据以下定义语句和数据的输入方式,scanf语句的正确形式应为:已有定义:float f1,f2;数据的输入方式:4.52 回车 3.5 回车选项:A、scanf(%f,%f,f1,f2);B、scanf(%f%f,f1,f2);C、scanf(%3.2f%2.1f,f1,f2);D、scanf(%3.2f%2.1f,f1,f2);正确答案:【scanf(%f%f,f1,f2);】23、问题:阅读下列程序,当输入数据的形式为 25,13,10回车,程序的输出结果为:#includestdio.h intmain()intx,y,z;scanf(%d%d%d,x,y,z);pri

9、ntf(x+y+z=%dn,x+y+z);return0;选项:A、x+y+z=48B、x+y+z=35C、x+z=35D、不确定值正确答案:【不确定值】24、问题:下列语句执行后,b的值是:char a=5,b=(char)(a+3);选项:A、8B、8C、56D、53正确答案:【8】25、问题:C语言中的标识符只能由字母、数字和下画线组成,且第一个字符选项:A、可以是字母、数字和下画线中的任一种字符B、必须为字母C、必须为数字D、必须为下画线或字母正确答案:【必须为下画线或字母】26、问题:表达式 35/3%3的值是:选项:A、11B、2C、3D、0正确答案:【2】27、问题:C语言的语句

10、都是以()结束。选项:A、.B、空格C、;正确答案:【;】28、问题:阅读下面的程序:#includestdio.h intmain()charch;scanf(%c%c,ch,ch);printf(%c,ch);return0;如果从键盘输入:1+2回车则程序的运行结果是:选项:A、1B、+C、2D、3正确答案:【+】29、问题:已知字母 a的 ASCII码为十进制的 97,下面程序的输出结果是:#includestdio.h intmain()charch1,ch2;ch1=a+3-1;ch2=a+2-2;printf(%d,%cn,ch1,ch2);return0;选项:A、99,aB、

11、99,97C、c,97D、不确定的值正确答案:【99,a】30、问题:下列选项中表示整型数据的是:选项:A、1e-5B、1C、hahaD、0 xaf正确答案:【0 xaf】第二章第二章 OJ编程题编程题第二章第二章 测验测验客观题客观题1、问题:逻辑运算符两侧运算对象的数据类型()选项:A、只能是 0 或 1 B、只能是 0或非 0 正数C、只能是整型或字符型数据D、可以是任何类型的数据正确答案:【可以是任何类型的数据】2、问题:能正确表示“当 x的取值在1,10和200,210范围内为真,否则为假”的表达式是()选项:A、(x=1)(x=10)(x=200)(x=210)B、(x=1)|(x

12、=10)|(x=200)|(x=210)C、(x=1)(x=10)|(x=200)(x=210)D、(x=1)|(x=10)(x=200)|(x=210)正确答案:【(x=1)(x=10)|(x=200)(x=210)】3、问题:若有:int a=1,b=2,c=3,d=4,m=2,n=2;则执行(m=ab)(n=cd)后 n 的值是()选项:A、1B、2C、3D、4正确答案:【2】4、问题:以下程序的输出结果是()#includestdio.hint main()int a,b,d=241;a=d/100%9;b=(-1)(-1);printf(“%d,%d”,a,b);return 0;选

13、项:A、6,1B、2,1C、6,0 D、2,0正确答案:【2,1】5、问题:若有 int x=10,y=20,z=30;以下语句执行后 x,y,z的值是()if(xy)z=x;x=y;y=z;选项:A、x=10,y=20,z=30 B、x=20,y=30,z=30C、x=20,y=30,z=10D、x=20,y=30,z=20正确答案:【x=20,y=30,z=30】6、问题:以下程序的输出结果是()#includestdio.hint main()int a=0,b=0,c=0;if(a=b+c)printf(*n);else printf($n);return 0;选项:A、有语法错误不能

14、通过编译B、可以通过编译但不能通过连接C、*D、$正确答案:【$】7、问题:以下程序的输出结果是()#includestdio.hint main()int m=5;if(m+5)printf(%dn,m);else printf(%dn,m-);return 0;选项:A、4 B、5C、6 D、7正确答案:【6】8、问题:以下程序的输出结果是()#includestdio.hint main()int x=2,y=-1,z=2;if(xy)if(y0)z=0;else z+=1;printf(%dn,z);return 0;选项:A、3 B、2C、1 D、0正确答案:【2】9、问题:以下程序

15、的输出结果是()#includestdio.hint main()int a=1,b=3,c=5,d=4,x;if(ab)if(cd)x=1;else if(ac)if(bd)x=2;else x=3;else x=6;else x=7;printf(x=%d,x);return 0;选项:A、1 B、2 C、3 D、6正确答案:【2】10、问题:为了避免嵌套的 ifelse语句的二义性,C语言规定 else总是与()组成配对关系选项:A、缩排位置相同的 ifB、在其之前未配对的 ifC、在其之前未配对的最近的 if D、同一行上的 if正确答案:【在其之前未配对的最近的 if】11、问题:若

16、运行时给变量 x输入 12,则以下程序的运行结果是()#includestdio.h int main()int x,y;scanf(%d,x);y=x12?x+10:x-12;printf(%dn,y);return 0;选项:A、0 B、22 C、12 D、10正确答案:【0】12、问题:以下程序的输出结果是()#includestdio.hint main()int k=4,a=3,b=2,c=1;printf(n%dn,ka?k:cb?c:a);return 0;选项:A、4 B、3 C、2 D、1正确答案:【1】13、问题:若 w=1,x=2,y=3,z=4,则表达式 wx?w:yz

17、?y:z 的值是()选项:A、4 B、3 C、2 D、1正确答案:【1】14、问题:执行下列程序段后,变量 a,b,c的值分别为()int a,b,c,x=10,y=9;a=(-x=y+)?-x:+y;b=x+;c=y;选项:A、a9,b9,c9 B、a8,b8,c10C、a9,b10,c9 D、a1,b11,c10正确答案:【a8,b8,c10】15、问题:以下程序的输出结果是()#includestdio.hint main()int x=0,y=2,z=3;switch(x)case 0:switch(y)case 0:printf(*);break;case 1:printf(%);b

18、reak;case 2:printf();break;case 1:switch(z)case 1:printf($);case 2:printf(#);break;default:printf();default:printf(!);return 0;选项:A、!B、*C、%D、!正确答案:【!】16、问题:下列条件语句中,功能与其他语句不同的是()选项:A、if(a)printf(%dn,x);else printf(%dn,y);B、if(a=0)printf(%dn,y);else printf(%dn,x);C、if(a!=0)printf(%dn,x);else printf(%d

19、n,y);D、if(a=0)printf(%dn,x);else printf(%dn,y);正确答案:【if(a=0)printf(%dn,x);else printf(%dn,y);】17、问题:有如下程序#includestdio.hint main()int x=1,a=0,b=0;switch(x)case 0:b+;case 1:a+;case 2:a+;b+;printf(a=%d,b=%dn,a,b);return 0;该程序的输出结果是()选项:A、a=2,b=1B、a=1,b=1C、a=1,b=0D、a=2,b=2正确答案:【a=2,b=1】18、问题:若执行下面的程序时从

20、键盘上输入 3和 4,则输出是()#includestdio.h int main()int a,b,s;scanf(%d%d,a,b);s=a;if(ab)s=b;s=s*s;printf(%dn,s);return 0;选项:A、14B、16C、18D、20正确答案:【16】19、问题:设 ch是 char 型变量,其值为 A,且有表达式:ch=(ch=Ach=Z)?(ch+32):ch;则表达式的值是()选项:A、AB、aC、ZD、z正确答案:【a】20、问题:设 a,b和 c 都是 int 型变量,且 a=3,b=4,c=5,则表达式中值为 0 的表达式是()选项:A、abB、abC、

21、a|b+cb-cD、!(ab)!c|1)正确答案:【!(ab)!c|1)】21、问题:能正确表示 a10或 a0的关系表达式是()选项:A、a=10 or a=0B、a=10|a=0C、a=10,a=0D、a=10|a=0正确答案:【a=10|a=0】22、问题:若运行下面程序时,给变量 a输入 15,则输出结果是()。#includestdio.hint main()int a,b;scanf(%d,a);b=a15?a+10:a-10;printf(%dn,b);return 0;选项:A、5B、25C、15D、10正确答案:【5】23、问题:以下选项中,两个条件语句语义等价的是()选项:

22、A、if(a=2)printf(%dn,a);if(a=2)printf(%n,a);B、if(a-2)printf(%dn,a);if(a!=2)printf(%n,a);C、if(a)printf(%dn,a);if(a=0)printf(%n,a);D、if(a-2)printf(%dn,a);if(a=2)printf(%n,a);正确答案:【if(a-2)printf(%dn,a);if(a!=2)printf(%n,a);】24、问题:关于 switch语句和 break语句的描述中,正确的是()选项:A、在 switch语句中必须使用 break语句B、break语句只能用于 s

23、witch语句中C、在使用 switch语句时,可以根据需要选择是否使用 break语句D、break语句是 switch语句的一部分正确答案:【在使用 switch语句时,可以根据需要选择是否使用 break语句】25、问题:以下程序的输出结果是()#includestdio.h int main()int x=1,y=0;switch(x)case 1:switch(y)case 0:printf(first,);break;case 1:printf(second,);break;case 2:printf(third);return 0;选项:A、first,thirdB、first,

24、second,thirdC、first,D、first,second,正确答案:【first,third】26、问题:判断 char型变量 ch是否为小写字母的正确表达式是()选项:A、a=ch=zB、(ch=a)(ch=z)C、(ch=a)(ch=z)D、(a=ch)and(z=ch)正确答案:【(ch=a)(ch=z)】27、问题:若有 int x=3,y=4,z=5;则下列表达式中值为 0 的是()选项:A、xyB、x=yC、x|y+zy-zD、!(xy)!z|9)正确答案:【!(xy)!z|9)】28、问题:已知 x=43,ch=a,y=0;则表达式(x=ychb!y)的值是()选项:

25、A、0B、1C、语法错误D、假正确答案:【1】29、问题:执行下列语句后 a的值为()int a,b,c;a=b=c=1;+a|+b+c;选项:A、0B、1C、2D、错误正确答案:【2】30、问题:执行下列语句后 b的值为()int a,b,c;a=b=c=1;+a|+b+c;选项:A、0B、1C、2D、错误正确答案:【1】31、问题:执行下列语句后 a的值为()int a=5,b=6,w=1,x=2,y=3,z=4;(a=wx)(b=yz);选项:A、5B、0C、2D、1正确答案:【0】32、问题:执行下列语句后 b的值为()int a=5,b=6,w=1,x=2,y=3,z=4;(a=wx

26、)(b=yz);选项:A、6B、0C、1D、4正确答案:【6】第三章第三章 OJ编程题编程题第三章第三章 测验测验客观题客观题1、问题:以下关于 for语句的说法不正确的是()选项:A、for 循环只能用于循环次数已经确定的情况B、for 循环是先判断表达式,后执行循环体语句C、for 循环中,可以用 break语句跳出循环体D、for 循环体语句中,可以包含多条语句,但是要用花括号括起来正确答案:【for循环只能用于循环次数已经确定的情况】2、问题:若 i和 k 都是整型变量,for语句如下,则下面描述正确的是()for(i=0,k=-1;k=1;k+)printf(*n);选项:A、循环体

27、执行两次B、循环体执行一次C、循环体一次也不执行D、构成无限循环正确答案:【构成无限循环】3、问题:以下程序中,while循环的次数是()#includestdio.hint main()int i=0;while(i10)if(i1)continue;if(i=5)break;i+;return 0;选项:A、1B、死循环,不能确定次数C、6D、10正确答案:【死循环,不能确定次数】4、问题:对于 for(表达式 1;表达式 3)可理解为()选项:A、for(表达式 1;1;表达式 3)B、for(表达式 1:1;表达式 3)C、for(表达式 1;表达式 1;表达式 3)D、for(表达式

28、 1;表达式 3;表达式 3)正确答案:【for(表达式 1;1;表达式 3)】5、问题:以下正确的描述是()选项:A、continue语句的作用是结束循环B、break语句可以在循环体或者 switch语句中使用C、break语句的作用是结束本次循环D、continue语句和 break语句的作用相同正确答案:【break语句可以在循环体或者 switch语句中使用】6、问题:循环语句中,如果第一次循环条件不成立时,循环体还会执行一次的是()选项:A、for 语句B、while 语句C、do-while语句D、其他三个答案都可以正确答案:【do-while语句】7、问题:语句 while(a

29、);中的条件 a 等价于()选项:A、a=0B、a!=0C、a=1D、a=1正确答案:【a!=0】8、问题:若变量 k为整型,则下面的 while 循环执行()次。k=2;while(k=0)printf(%d,k);k-;printf(“n”);选项:A、10B、9C、0D、1正确答案:【0】9、问题:下面程序的运行结果是()#includestdio.hint main()int num=0;while(num=2)num+;printf(%d,num);return 0;选项:A、1B、1 2C、1 2 3D、1 2 3 4正确答案:【1 2 3】10、问题:已知在 main()函数中定

30、义了整型变量 i,则下面程序段的执行结果是()for(i=0;i10;i+)if(i=5)break;printf(%d,i);选项:A、0B、1C、5D、10正确答案:【0】11、问题:已知 n为整型变量,则下述循环程序段执行后,n 的值是()for(n=0;n100;n=2*n+1);printf(%d,n);选项:A、125B、126C、127D、128正确答案:【127】12、问题:在 C语言中,执行语句:for(j=1;j+4;);后,变量 j 的值是()选项:A、3B、4C、5D、不确定值正确答案:【5】13、问题:下述程序段执行后,输出的结果是()#includestdio.hi

31、nt main()int a,b;for(a=1,b=1;a=100;a+)if(b=10)break;if(b%3=1)b+=3;continue;printf(%d,a);return 0;选项:A、4B、5C、6D、101正确答案:【4】14、问题:已知 i,j,w为整型变量,且 w=0,则下述程序段执行后,w 的值是()for(i=4;i!=0;i-)for(j=1;j=2;j+)w=w+i*j;w=i*j;选项:A、4B、0C、1D、30正确答案:【0】15、问题:设 n为整型变量,则循环语句 for(n=10;n0;n-)的循环次数为()选项:A、10B、9C、11D、12正确答案

32、:【10】16、问题:设已定义 k为 int 型变量,则下面 while 循环执行()k=10;while(k=1)k-=1;选项:A、执行 10 次B、无限循环C、一次也不执行D、执行一次正确答案:【无限循环】17、问题:下面关于 for循环语句描述正确的是()选项:A、for 循环不能用于循环次数未知的情况B、for 循环语句执行时是先执行循环体语句,后判断表达式C、不能使用 break语句结束 for循环语句D、使用 for 语句构成的循环结构,当循环体语句是多条语句时,循环体语句需要用括起来正确答案:【使用 for语句构成的循环结构,当循环体语句是多条语句时,循环体语句需要用括起来】1

33、8、问题:设已定义 k为 int 型变量,则下面 while 循环执行()k=10;while(k=1)k-=1;选项:A、执行 10 次B、无限循环C、执行一次D、一次也不执行正确答案:【一次也不执行】19、问题:已知整型变量 a=1,b=2,c=2,t为整型变量,则下述循环执行后 a,b,c的值是()while(abc)t=a;a=b;b=t;c-;选项:A、1 2 0B、2 1 0C、1 2 1D、2 1 1正确答案:【1 2 0】20、问题:如果在 main函数中,i是已经定义好的整型变量,则下面循环执行后的输出结果是()for(i=1;i=5;i+)if(i%2)printf(*);

34、else continue;printf(#);选项:A、*B、*C、*F、*G、*H、*I、*J、*M、*N、*正确答案:【*#*#*#】21、问题:已知整型变量 x的初值为 23,则以下循环程序执行后将输出()do printf(%d,x-);while(!x);选项:A、321B、23C、不输出任何内容D、陷入死循环正确答案:【23】22、问题:设有整型变量 x,下述语句()不会出现死循环选项:A、for(;x+=1);B、for(;(x=getchar()!=n;);C、while(1)x+;D、for(x=10;x-);正确答案:【for(;(x=getchar()!=n;);】23

35、、问题:以下程序用于求 1+1/2+1/3+.+1/9,指出程序的错误行()#includestdio.hint main()int i;float t,s=0;A:for(i=1;i10;i+);B:t=1/i;C:s+=t;D:printf(%.2f,s);return 0;选项:A、A 标号对应的代码行B、B 标号对应的代码行C、C 标号对应的代码行D、D 标号对应的代码行正确答案:【A标号对应的代码行#B 标号对应的代码行】24、问题:以下程序代码要求实现求输入的 10个数中正数的个数。指出程序的错误行()#includestdio.hint main()int i,a,n=0;for

36、(i=0;i10;i+)A:scanf(%f,a);B:if(a=0)C:break;n+;D:printf(%d,n);return 0;选项:A、A 标号对应的代码行B、B 标号对应的代码行C、C 标号对应的代码行D、D 标号对应的代码行正确答案:【A标号对应的代码行#C 标号对应的代码行】25、问题:在 main函数中,c是经过定义的整型变量,则 while(c=getchar();是正确的循环语句()选项:A、正确B、错误正确答案:【正确】26、问题:for(;);语句相当于 while(1);()选项:A、正确B、错误正确答案:【正确】27、填空题:以下程序运行后的输出结果是()。#

37、includestdio.h int main()int i=10,j=0;do j=j+i;i-;while(i2);printf(%dn,j);return 0;正确答案:【52】28、填空题:设有以下程序:#includestdio.h int main()int n1,n2;scanf(%d,n2);while(n2!=0)n1=n2%10;n2=n2/10;printf(%d,n1);return 0;程序运行后,如果从键盘上输入 1298;则输出结果为()。正确答案:【8921】29、填空题:以下程序的输出结果是()。#includestdio.h int main()int s,

38、i;for(s=0,i=1;i3;i+,s+=i);printf(%dn,s);return 0;正确答案:【5】30、填空题:阅读下面程序,程序的结果是()。#includestdio.h int main()int i=7;for(i=2;i0;i-)printf(%d,i);printf(%d,i);return 0;正确答案:【2,1,0】第四章第四章 OJ编程题编程题第四章第四章 测验测验客观题客观题1、问题:以下关于数组的描述正确的是()选项:A、数组的大小是固定的,但可以有不同的类型的数组元素;B、数组的大小是可变的,但所有数组元素的类型必须相同;C、数组的大小是固定的,但所有数

39、组元素的类型必须相同;D、数组的大小是可变的,但可以有不同的类型的数组元素;正确答案:【数组的大小是固定的,但所有数组元素的类型必须相同;】2、问题:在定义 int a10;之后,对 a 的引用正确的是()选项:A、a9 B、a6.3C、a(6)D、a10正确答案:【a9】3、问题:以下对二维数组 a进行正确初始化的是()选项:A、int a23=1,2,3,4,5,6;B、int a3=1,2,3,4,5,6;C、int a2=1,2,3,4,5,6;D、int a2=1,2,3,4;正确答案:【int a3=1,2,3,4,5,6;】4、问题:在定义 int a54;之后,对 a 的引用正

40、确的是()选项:A、a24 B、a50 C、a00 D、a0,0正确答案:【a00】5、问题:当接受用户输入的含空格的字符串时,应使用的函数是()选项:A、scanf()B、gets()C、getchar()D、getc()正确答案:【gets()】6、问题:以下程序给数组所有的元素输入数据,空处应填入()main()int a10,i=0;while(i10)scanf(%d,_);选项:A、ai B、ai+C、ai+D、a+i正确答案:【ai+】7、问题:有字符数组 a80,b80,则正确的输出语句是()选项:A、puts(a,b);B、printf(%s,%s,a,b);C、putcha

41、r(a,b);D、puts(a);puts(b);正确答案:【puts(a);puts(b);】8、问题:判断字符串是否相等,应当使用()选项:A、if(a=b)B、if(a=b)C、if(strcpy(a,b)D、if(strcmp(a,b)正确答案:【if(strcmp(a,b)】9、问题:下面程序的运行结果是()char ctv0willn;printf(%d,strlen(c));选项:A、14B、3C、9 D、输出值不确定正确答案:【3】10、问题:若二维数组 a有 m 列,则在 aij前的元素个数是()选项:A、j*m+i B、i*m+j C、i*m+j-1 D、i*m+j+1正确

42、答案:【i*m+j】11、问题:以下一维数组 a的正确定义是()选项:A、int a(10);B、float n=10,an;C、int n;scanf(%d,n);float an;E、define size 10;long asize;正确答案:【#define size 10;long asize;】12、问题:以下对字符数组 word 进行初始化,不正确的是()选项:A、char wordcool0;B、char wordc,o,o,l;C、char wordcool0;D、char wordcool0;正确答案:【char wordcool0;】13、问题:在执行 int a31,2

43、,3,4,5,6;语句后,a10的值是()选项:A、1B、2C、4D、5正确答案:【4】14、问题:在执行 char str10china0;strlen(str)的结果是()选项:A、5B、6C、7D、9正确答案:【5】15、问题:在 C语言中,引用数组元素时,其数组下标的数据类型允许是()选项:A、整型常量B、整型表达式或整型常量C、实型常量D、任何类型的表达式正确答案:【整型表达式或整型常量】16、问题:有下面程序段 char a3,b=china;a=b;printf(%s,a);则()选项:A、运行后将输出 chinaB、运行后将输出 chC、运行后将输出 chiD、编译出错正确答案

44、:【编译出错】17、问题:下面程序的功能是将字符串 s 中所有的字符 c删除。应填入()#include stdio.hmain()char s80;int i,j;gets(s);for(i=j=0;si!=0;i+)if(si!=c)_;sj=0;puts(s);选项:A、sj+=siB、s+j=siC、sj=si;j+D、sj=si正确答案:【sj+=si】18、问题:下面程序的运行结果是()#include stdio.hmain()char ch7=12ab56;int i,s=0;for(i=0;chi=0chi=9;i+=2)s=10*s+chi-0;printf(%dn,s);

45、选项:A、1B、1256C、12ab56D、1256正确答案:【1】19、问题:下面程序的运行结果是()#include stdio.hmain()char str=ssswlia,c;int k;for(k=2;(c=strk)!=0;k+)switch(c)case i:+k;break;case l:continue;default:putchar(c);continue;putchar(*);选项:A、ssw*B、sw*C、sw*aD、sw正确答案:【sw*】20、问题:下面程序的运行结果是()#include stdio.h#include string.hmain()char a8

46、0=ab,b80=lmnp;int i=0;strcat(a,b);while(ai+!=0)bi=ai;puts(b);选项:A、lbB、ablmnpC、abD、lblmnp正确答案:【lblmnp】21、问题:以下程序的功能是:按顺序读入 10名学生 4 门课程的成绩,计算出每位学生的平均分并输出:#include stdio.hmain()int n,k;float score,sum,aver;sum=0.0;for(n=1;n=10;n+)for(k=1;k=4;k+)scanf(%f,score);sum+=score;aver=sum/4.0;printf(No%d:%fn,n,

47、aver);以上程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确,这条语句是()选项:A、sum=0.0;B、sum+=score;C、aver=sum/4.0;D、printf(No%d:%fn,n,aver);正确答案:【sum=0.0;】22、问题:以下程序的输出结果是()#include stdio.hmain()char s=abcdef;s3=0;printf(%sn,s);选项:A、abcdefB、abcC、abcdD、abc0正确答案:【abc】23、问题:写出以下程序的输出结果()#include stdio.hmain()char s130=this bo

48、ok,s230=that hook;int i;for(i=0;s1i!=0 s2i!=0;i+)if(s1i=s2i)printf(%c,s1i);printf(n);选项:A、thB、ookC、th ookD、this正确答案:【th ook】24、问题:以下 4个字符串函数中,()所在的头文件与其他 3 个不同选项:A、strcpyB、strlenC、strcmpD、gets正确答案:【gets】25、问题:在数组中,数组名表示()选项:A、数组第 2 个元素的首地址B、数组第 1个元素的首地址C、数组所有元素的首地址D、数组最后 1 个元素的首地址正确答案:【数组第 1个元素的首地址】

49、26、问题:合法的数组定义是()选项:A、char a=string;B、int a5=0,1,2,3,4,5;C、char a=string;D、char a=0,1,2,3,4,5正确答案:【char a=string;】27、问题:以下给字符数组 str定义和赋值正确的是()选项:A、char str10;str=china!;B、char str=china!;C、char str10;strcpy(str,abcdefghijkl);D、char str10=abcdefghijkl;正确答案:【char str=china!;】28、问题:执行下面的程序段后,变量 k中的值为()i

50、nt k=3,s2;s0=k;k=s1*10;选项:A、不定值B、33C、30D、10正确答案:【不定值】29、问题:设有数组定义:char array=China;则数组 array所占的存储空间为()选项:A、4 个字节B、5 个字节C、6 个字节D、7 个字节正确答案:【6个字节】30、问题:设有数组定义:char array10=China;则数组 array所占的存储空间为()选项:A、4 个字节B、5 个字节C、6 个字节D、10 个字节正确答案:【10个字节】第五章第五章 OJ编程题编程题第五章第五章 测验测验客观题客观题1、问题:以下说法正确的是()选项:A、函数定义可以嵌套,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高等教育

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报