弄不懂?。?/h1>
#include
int main()?
{
int sum,num;
?for(sum=0,num=0;num<=3;num++,sum++)
?{sum+=num;
?printf("num=%d,sum=%d\n",num,sum);
}
?}
?請問這個為啥第一個答案 sum=0 ,num=0? 那個第三個表達式不是都是num++和sum++嗎?應該先加上再輸出嗎? 如果不是先加上再輸出那第三行sum咱們得到5的?
#include
int main()?
{ int sum,num;
?for(sum=0,num=0;num<=3;num++,sum++)
?{sum+=num;
?printf("num=%d,sum=%d\n",num,sum); }
?}
?請問這個為啥第一個答案 sum=0 ,num=0? 那個第三個表達式不是都是num++和sum++嗎?應該先加上再輸出嗎? 如果不是先加上再輸出那第三行sum咱們得到5的?
2017-11-29
for語句中執行順序是:首先進行賦值sum=0,num=0;然后進入條件判斷num<3;如果條件成立就執行{}里面的程序,而不是你所想的執行num++和sum++;最后{}里面的程序執行完畢之后進行num++和sum--,然后又調回去進行判斷如此重復進行,知道條件不成立結束循環。