#include <stdio.h>int main(){int sum=0;int i;for(i=1;i<=10;i++){ printf("%d\n",i); if(i==3); { goto Loop; }}Loop:printf("結(jié)束for循環(huán)了....");return 0;}
3 回答
已采納

望遠
TA貢獻1017條經(jīng)驗 獲得超1032個贊
for(i=1;i<=10;i++) { printf("%d\n",i); if(i==3);//if語句執(zhí)行的是空語句,導(dǎo)致goto語句無需條件即可執(zhí)行。 //當i==1時執(zhí)行g(shù)oto語句跳出循環(huán),只輸出1 { goto?Loop; } } Loop:printf("結(jié)束for循環(huán)了....");
//改動后 for(i=1;i<=10;i++) { printf("%d\n",i); if(i==3) { goto?Loop; } } Loop:printf("結(jié)束for循環(huán)了...."); 輸出?: 1 2 3 /*盡量不要在程序中使用goto語句,這極大的破壞了程序的結(jié)構(gòu)性 goto語句會使程序的靜態(tài)結(jié)構(gòu)和動態(tài)結(jié)構(gòu)不一致,從而使程序難以理解且難以查錯。 并且G·加科皮尼和C·波姆從理論上證明了:任何程序都可以用順序、分支和重復(fù)結(jié)構(gòu)表示出來。 這個結(jié)論表明,從高級程序語言中去掉goto語句并不影響高級程序語言的編程能力, 而且編寫的程序的結(jié)構(gòu)更加清晰。 */
- 3 回答
- 1 關(guān)注
- 1706 瀏覽
添加回答
舉報
0/150
提交
取消