for 循环内的 for 循环与 if else 条件
for loop inside a for loop with if else condition
for (x = 0; x < 4; x++) {
for (int a = 22; a <= 62;) {
if (isCooked[x] == 1) {
gotoxy(a,3); printf("cooked");
gotoxy(a,4); printf("%-10s",food[userServings[x]]);
a += 12;
} else {
gotoxy(a,3); printf("!");
gotoxy(a,4); printf("%-10s",food[userServings[x]]);
a += 12;
}
}
}
请问上面的循环和条件有什么问题。我正在尝试打印我选择的 4 种蔬菜的名称。通过使用 gotoxy
我想在循环中的给定坐标上打印它们。
在 c 中你不能在任何地方声明变量。您已经在内部 for 循环中声明了 int a。
您应该只计算 gotoxy
坐标,而不是第二个循环:
for (x = 0; x < 4; x++) {
int a = 22 + x * 12;
if (isCooked[x] == 1) {
gotoxy(a, 3); printf("cooked");
gotoxy(a, 4); printf("%-10s", food[userServings[x]]);
} else {
gotoxy(a, 3); printf("! ");
gotoxy(a, 4); printf("%-10s", food[userServings[x]]);
}
}
在你的程序中 x 没有声明
for (x = 0; x < 4; x++) {
for (int a = 22; a <= 62;) {
if (isCooked[x] == 1) {
gotoxy(a,3); printf("cooked");
gotoxy(a,4); printf("%-10s",food[userServings[x]]);
a += 12;
} else {
gotoxy(a,3); printf("!");
gotoxy(a,4); printf("%-10s",food[userServings[x]]);
a += 12;
}
}
}
请问上面的循环和条件有什么问题。我正在尝试打印我选择的 4 种蔬菜的名称。通过使用 gotoxy
我想在循环中的给定坐标上打印它们。
在 c 中你不能在任何地方声明变量。您已经在内部 for 循环中声明了 int a。
您应该只计算 gotoxy
坐标,而不是第二个循环:
for (x = 0; x < 4; x++) {
int a = 22 + x * 12;
if (isCooked[x] == 1) {
gotoxy(a, 3); printf("cooked");
gotoxy(a, 4); printf("%-10s", food[userServings[x]]);
} else {
gotoxy(a, 3); printf("! ");
gotoxy(a, 4); printf("%-10s", food[userServings[x]]);
}
}
在你的程序中 x 没有声明