我试图编写一个程序来列出给定数字的因数。当我写这个时它起作用了:
int main () {
int num, i;
printf("\nEnter a number: ");
scanf("%d", &num);
for(i == 0; i <= num; ++i) {
if (num % i == 0) {
printf("\n\t%d", i);
}
}
}
但不是当for循环是
for(i = 0; i <= num; ++i)
我很困惑,因为我认为这是 for 循环的格式。有人可以指出我的错误吗?
最佳答案
在这种情况下,您应该使用 i=1
开始循环如 for(i = 1; i <= num; ++i)
, 否则你试图将一个数字除以 0
.因子永远不可能是0
.
关于c - 当我写 "i == 0"时 for 循环有效,但在 C 中写 "i = 0"时无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18036625/