C语言问题 这道题为什么选D啊,求详细解释

 我来答
1269589562
2018-01-07 · TA获得超过215个赞
知道小有建树答主
回答量:197
采纳率:93%
帮助的人:101万
展开全部

你好!几个关键点:

  1. %是求余数

  2. if判断数字时0是False,非0是True

  3. 字符直接加数字表示表ASCII加多少位,字母就理解直接'a'+1 = 'b'这样吧

于是按循环分析题目:

  • i=0时,0除以2余数 = 0,if表达式为假,执行else:输出 0 + 'A' = 'A'

  • i=1时,1除以2余数 = 1,if表达式为真,执行:      输出 1 + 'a' = 'b' 

  • i=2时,2除以2余数 = 0,if表达式为假,执行else:输出 2 + 'A' = 'C' 

  • i=3时,3除以2余数 = 1,if表达式为真,执行:      输出 3 + 'a' = 'd' 

  • i=4时,4除以2余数 = 0,if表达式为假,执行else:输出 4 + 'A' = 'E' 

  • i=5时,5除以2余数 = 1,if表达式为真,执行:      输出 5 + 'a' = 'f'  

所以最终输出:AbCdEf,选D

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式