C++题目请教

来源:百度知道 编辑:UC知道 时间:2024/09/22 18:30:36
题目如下
main()
{int i;
for(i=1;i<=5;i++)
{if(i%2) printf("*");
else continue;
printf("#");
}
printf("$\n");
}

给出的答案是 *#*#*#$ 为什么?还有if(i%2)是什么意思,

else continue;
printf("#"); 是说 :否则继续执行printf("#")吗?

if(i%2) printf("*");//不被2整除时条件非0(为真) 即为奇数时输出*
else continue; //为奇数时候此语句不执行 执行后面的语句 输出# ;
//为偶数时继续循环 不执行后面的语句 则不输出#
printf("#");

循环执行了3次 最后printf("$\n");输出$并回车

还有if(i%2)是什么意思,

----------------是说,如果i是奇数就执行if

else continue;
printf("#"); 是说 :否则继续执行printf("#")吗?

------------不是,是说,否则开始下一次循环,跳过后面的语句。

if(i%2)是说如果i与2求余余数是否为零(也就是i不是2的倍数执行if后边的语句),continue是结束本次循环,执行下一次循环。