练习18

二级C语言必过教程

共 1288字,需浏览 3分钟

 ·

2021-07-01 18:11

点击蓝字

关注我们

DRAGON BOAT FESTIVAL




练习18


考试规则:点击你认为正确的选项

1.有以下程序

#includemain(){int i,s=0,t0={1 ,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)   s+=*(t+i);printf(%d\n",s);}

程序执行后的输出结果是( )。

A.20

回答错误 ✕

B.25

回答正确 √

试题解析

统计1~9九个数中的奇数和,此题考察指向数组的指针。C语言规定数组名代表数组的首地址,也就是第一个元素的地址。因此*(t+i)代表数组的第i+1个元素。程序运行的结果是1+3+5+7+9=25。答案选B


C.45

回答错误 ✕


D.36



回答错误 


点击答题丨点击选项查看对错丨展开动画



2.设有定义

char strD = "Hello";

则语句

printf("%d %d", sizeof(str), strlen(str));

的输出结果是()。

A.6 5

回答正确 √


试题解析

字符数组存放字符串时C语言编译系统会自动在其后面添加上结束标识符^\0',数组str的维数没有指定,所以str含有的元素个数(占用字节数)要比字符串长度大1,所以用sizeof(str)求得的字符串占用字节数为6,用strlen(str)计算出的字符串长度为5,答案选A。


B.6 6

回答错误 ✕

C.5 5

回答错误 ✕


D.5 6

回答错误 


点击答题丨点击选项查看对错丨展开动画



3.有以下程序:

#includemain(){  int ijx=0;  for(i=0;i<2;i++)  {    x++;    for(=:j<=3j++)    {      if(%2)        continue;      x++;    }    x++;  }  printf("x=%d\n",x);}

程序执行后的输出结果是( )。

A.x=4

回答错误 ✕

B.x=8

回答正确 √

试题解析

coutinue的作用是跳出循环体中剩余的语句而进行下一次循环。第- -次执行外循环i的值为0,执行x++,x的值变为1,第一次执行内 层循环j的值为0,不满足if条件,执行x++x的值变为2,第二次内循环j的值为1,if条件成立,跳出本次循环第三次执行内循环的值为2,不满足if条件,x的值变为3,第四次执行内循环j的值为3满足条件跳出本次内循环,x的值加1,即为4,第一-次外循环结束。第二次执行外循环时,同理j的值被加了,4次变为8,所以选择B选项。


C.x=6 .



回答错误 ✕


D.x=12

回答错误 


点击答题丨点击选项查看对错丨展开动画






浏览 22
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报