for( x=3; x<6; x++) printf((x%2)?(“**%d尀n”):(“##%d尀n”),x); 求大神帮助 输出的那部分看不懂啊

2024-11-05 05:08:00
推荐回答(3个)
回答1:

(x%2)?(“**%d\n”):(“##%d\n”) 是指定输出格式
当(x%2)不为0时用 “**%d\n”, 否则就用 “##%d\n”
整句相当於是
for( x=3; x<6; x++) {
if((x%2)!=0)
printf(("**%d\n"), x);
else
printf(("##%d\n"), x);
}

回答2:

奇葩

回答3:

输出部分的结构为“(判断条件)(执行1):(执行2)”
判断中非0代表‘是’——执行1
判断中0代表‘非’——执行2
此题:
x=3;x和2取余为1——是——“**3”——x++=4
x=4;x和2取余为0——非——“##4”——x++=5
x=5;x和2取余为1——是——“**5”——x++=6结束
答案:
**3
##4
**5