#include<stdio.h> int main(void) { int i,j,x=0; for(i=0;i<2;i++) { x++; for(j=0

2024-12-01 00:48:03
推荐回答(2个)
回答1:

int main(void){
    int i,j,x=0;
    for(i=0;i<2;i++){//这里循环2次
        x++;//所以会使x增加2
        for(j=0;j<=3;j++){//这里循环4次,本应使x增加4
            if(j%2)//可是由于这个判断和continue的存在,只能使下面的x++做两次
                continue;//但这个循环是嵌套在前一个循环中的,所以要执行两次循环
            x++;//结果还是使x增加了4
        }
        x++;//这个x++与第一个x++一样也要跟着外循环执行两次使x+2
    }//所以总共x增加了8,而最初x=0,所以x的值最后中8
    printf("x = %d\n",x);
    return 0;
}

回答2:

在 VC 里面单步运行,就知道为什么了 ~