亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問在上面的例子中為什么goto LOOP放在if語句外面就不行了

#include <stdio.h>

int main()

{

? ?int sum=0;

? ?int i=1;

? ?LOOP:if(i<=10)

? ?{

? ? ? ?sum+=i;

? ? ? ?i++;


? ?}

goto LOOP;

printf ("sum=%d\n",sum);




return 0;

}


正在回答

4 回答

代碼的編譯是從上至下的,你這樣寫就是執行完一次if后,繼續向下讀就會讀到goto,你這個goto放在外面的結果就是每次執行到后面都會被要求回去從前面再執行一次,然后又到后面又回到前面,goto這個梗永遠也出不來,如果是向前跳轉,你得保證在達到目的的時候能跳過goto,如果要放在外面的話你只能把goto放在if的前面,不然會就是死循環

2 回復 有任何疑惑可以回復我~
#1

程序之神 提問者

已采納 謝謝 !
2019-09-26 回復 有任何疑惑可以回復我~

你自己可以判斷嘛

0 回復 有任何疑惑可以回復我~

這個也是死循環嗎?

#include <stdio.h>

int main()

{

? ?int sum=0;

? ?int i=1;

? ?LOOP:if(i<=10)

? ?{

? ? ? ?sum+=i;

? ? ? ?i++;

goto LOOP;

? ?}

printf ("sum=%d\n",sum);




return 0;

}


0 回復 有任何疑惑可以回復我~
#1

柳青夜明

復制代碼然后用VC++試試
2019-09-10 回復 有任何疑惑可以回復我~

不管對不對,但是你這已經是個死循環了.

0 回復 有任何疑惑可以回復我~
#1

程序之神 提問者

這個也是死循環嗎? #include <stdio.h> int main() { int sum=0; int i=1; LOOP:if(i<=10) { sum+=i; i++; goto LOOP; } printf ("sum=%d\n",sum); return 0; }
2019-09-02 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請問在上面的例子中為什么goto LOOP放在if語句外面就不行了

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號