【C語言細節】當for循環中判斷條件遇到逗號運算符

問題

求下列輸出x的結果

 for(i=0,j=0;i<6,j<10;i++,j++)
            x = i+j;

解答

用C語言

#include <stdio.h>
int main() {
     int i,j,x=0;
        for(i=0,j=0;i<6,j<10;i++,j++) {
            printf("i=%d,j=%d\t\t", i, j);
            x = i + j;
            printf("x=%d\n", x);
        }
    return 0;
}

運行結果
在這裏插入圖片描述

當把判斷條件中i<6和j<10換個位置

#include <stdio.h>
int main() {
     int i,j,x=0;
        for(i=0,j=0;j<10,i<6;i++,j++) {
            printf("i=%d,j=%d\t\t", i, j);
            x = i + j;
            printf("x=%d\n", x);
        }
    return 0;
}

運行結果
在這裏插入圖片描述

結論

for循環中判斷條件是用“,”隔開,所以只需要判斷最後一個條件。這也是逗號運算符需要注意的地方。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章