#include<stdio.h>
int main(){
int i;
clrscr();
for(i=0,i++,i<=5;i++,i<=2;i=0,i<=5,i+=3){
printf("%d ",i);
}
return 0;
}
这个程序的输出是2,请详细说明逻辑
最佳答案
这个循环等同于:
i = 0;
i++;
i <= 5;
i++;
while (i <= 2)
{
printf("%d ", i);
i = 0;
i <= 5;
i += 3;
i++;
}
我猜您以前可能没有遇到过的部分是逗号运算符。用逗号分隔的一系列表达式依次求值,“返回”值是最终表达式的值。例如:
x = (y + 3, ++y, y + 5);
大致相当于:
y + 3;
++y;
x = y + 5;
关于c - 需要帮助理解我的 for 循环是如何工作的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7415961/