C语言问题 这道题为什么选D啊,求详细解释
展开全部
你好!几个关键点:
%是求余数
if判断数字时0是False,非0是True
字符直接加数字表示表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
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询