我从用户那里得到一个号码,以用C语言打印图案。如果数字是奇数,就没有问题。但是,如果数字是偶数,则代码将打印1块以上!因此,我想检查for
循环中的数字是否为偶数。
我尝试了这段代码,但是没有用:
for (i = 1; i <= numb + 2; i++) {
if (numb% 2 == 0) {
numb+= 1;
}
for (j = 0; (numb % 2 == 0) ? (j < numb) : (j < numb+ 1); j++) {
if (i % 2 == 0) {
printf("* %d * ", j);
}
else {
printf("***** ");
}
}
printf("\n");
}
答案 0 :(得分:1)
问题是for
循环中第二条语句(条件“测试”)的语法。您需要重新排列代码,因此这是 单 语句:
for (j = 0; j < ( (numb % 2 == 0) ? numb : numb + 1 ); j++) {
...
}