int main()
{
int i = 1;
for (printf("%d", i); i<4; i++)
printf("%d", i);
printf(" ");
system("pause");
return 0;
}
这段程序的运行结果为1123,for中的printf("%d",i),只在第一次打印,for(1,2,3)中1是赋予初值,只执行一次,初值i已经赋予为1,所以不再次赋值也是可以的。
main( )
{ int a = 1, b = 1;
for( ; a--; )
b--;
printf("%d,%d ", a, b);
}
在这个程序中运行结果为 -1,0. 因为for循环条件为a--,这个我们只要考虑a--为true/false,只要是true就运行,第一次a--由1->0;b--由1->0,第二次a--因为第一次自减变成0,条件由true变成false,所以b--不再执行,但是a--还是要执行的,由0自减成-1.