这个c语言的结果是多少?

求大神帮忙... 求大神帮忙 展开
 我来答
拥抱Linux
2019-01-12 · 知道合伙人教育行家
拥抱Linux
知道合伙人教育行家
采纳数:418 获赞数:2159
大学的校级奖学金,机械行业十年工作经验

向TA提问 私信TA
展开全部
运行结果是「*#*#*#$」,选项A。
过程解析:
if(i%2)表示,当括号中的值为「真」时,执行if下面的语句,为「假」时,执行else下面的语句。「i%2」是得到 i 除以2的余数,换句话说,当 i 是奇数时,i%2 结果为1,是「真」,当 i 是偶数时, i%2 结果是0,是「假」。
for循环中的语句,实际上是2个部分,一个是if...else...语句块,还有一个是printf()语句,这2个部分是平级关系,在「不continue或不break」循环的情况下,是要顺序执行的。而else下面正好是continue,也就是「到此结束本次循环,进入下一次循环」,那么执行了else的时候,下面的printf()就被忽略了。
总结起来,运行过程就是,第1、3、5次循环的时候,「i」的值分别为1、3、5,是奇数,for循环内执行if()下面的语句和后面的printf()语句,于是输出字符「*」和「#」,第2、4次循环的时候,「i」的值分别为2、4,是偶数,for循环内经过if()判断后跳转到else,执行else下面的语句,于是后面的printf()语句被忽略,即不执行,所以没有输出。for循环结束后,主程序中的printf()语句执行,输出字符「$」。所以,完整的输出结果就是「*#*#*#$」。
(如有帮助,烦请采纳,谢谢!)
qqlxinye
2019-01-12 · TA获得超过1980个赞
知道大有可为答主
回答量:2257
采纳率:65%
帮助的人:518万
展开全部
关键在i%2是求余数,还有就是continue,继续for运行,for以下不运行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听不清啊
高粉答主

2019-01-12 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
选择答案a。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鹿白行落
2019-01-12
知道答主
回答量:13
采纳率:0%
帮助的人:4.4万
展开全部
答案 A , *#*#*#$
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
走一起干他66
2019-01-12
知道答主
回答量:9
采纳率:0%
帮助的人:6483
展开全部
两个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(10)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式