新聞中心
c語言中 go to語句的使用方法
goto語句也稱為無條件轉(zhuǎn)移語句,其一般格式如下: goto 語句標號; 其中語句標號是按標識符規(guī)定書寫的符號, 放在某一語句行的前面,標號后加冒號(:)。語句標號起標識語句的作用,與goto 語句配合使用。
站在用戶的角度思考問題,與客戶深入溝通,找到永年網(wǎng)站設(shè)計與永年網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站建設(shè)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋永年地區(qū)。
如: label: i++;
loop: while(x7);
goto loop;
C語言不限制程序中使用標號的次數(shù),但各標號不得重名。goto語句的語義是改變程序流向, 轉(zhuǎn)去執(zhí)行語句標號所標識的語句。
goto語句通常與條件語句配合使用??捎脕韺崿F(xiàn)條件轉(zhuǎn)移, 構(gòu)成循環(huán),跳出循環(huán)體等功能。
擴展資料:
go to在C語言中的應(yīng)用:
統(tǒng)計從鍵盤輸入一行字符的個數(shù)。
#includestdio.h
int?n=0;
int?main(void)?{
printf("input?a?string:?");
? loop:?if?(getchar()!='\n')?{
n++;
?goto?loop;
}
printf("output:?%d\n",n);
}
例如輸入:abcdefghijklmnopqrstuvwxyz
然后回車Enter
輸出:26
本例用if語句和goto語句構(gòu)成循環(huán)結(jié)構(gòu)。當輸入字符不為'\n'時即執(zhí)行n++進行計數(shù)。
然后轉(zhuǎn)移至if語句循環(huán)執(zhí)行,直至輸入字符為'\n'才停止循環(huán)。
參考資料:百度百科-go to 語句
C語言中g(shù)oto語句的用法??舉例來說。
goto語句可以使程序在沒有任何條件的情況下跳轉(zhuǎn)到指定的位置,所以goto語句又被稱為是無條件跳轉(zhuǎn)語句。
它的語法如下
goto label;
//其它代碼
label:
其中,label為我們自己定義的一個標簽,定義的規(guī)則與變量的命名相同,它的位置是不固定的,它可以寫在goto語句的后面,也可以寫在它的前面,然而goto語句只能在一個函數(shù)內(nèi)部跳轉(zhuǎn),它并不允許跳轉(zhuǎn)出一個函數(shù)外部。
int day = 1;
loop:
if (day = 31)
{
printf("%d\n", day);
day++;
goto loop;
}
上面程序就是利用了goto和if語句來實現(xiàn)了循環(huán)功能,它與while實現(xiàn)的循環(huán)功能一樣,其中l(wèi)oop為我們定義的一個label(標簽)。
擴展資料:
使用goto語句的建議
1) 使用goto語句只能goto到同一函數(shù)內(nèi),而不能從一個函數(shù)里goto到另外一個函數(shù)里。
2) 使用goto語句在同一函數(shù)內(nèi)進行g(shù)oto時,goto的起點應(yīng)是函數(shù)內(nèi)一段小功能的結(jié)束處,goto的目的label處應(yīng)是函數(shù)內(nèi)另外一段小功能的開始處。
3) 不能從一段復(fù)雜的執(zhí)行狀態(tài)中的位置goto到另外一個位置,比如,從多重嵌套的循環(huán)判斷中跳出去就是不允許的。
4)應(yīng)該避免向兩個方向跳轉(zhuǎn)。這樣最容易導(dǎo)致"面條代碼"。
參考資料來源:百度百科-goto語句
C語言GO TO語句怎么用
可以使程序跳轉(zhuǎn)到標記位置,可以和if語句構(gòu)成循環(huán),但是對于goto語句的使用爭議很大,它能使程序很輕松的跳出多個嵌套循環(huán),但是會破壞程序的模塊化,使程序的可讀性變差,項目越大這個缺點越明顯,所以個人觀點不建議使用,了解就可以了,goto語句的一些用處while和do
while循環(huán)可以代替。
用法舉例:
#include
stdio.h
#include
stdlib.h
int
main()
{
char
input;
loop:
printf("Hello,
world!\n");
printf("Repeat?(y/n)")
scanf("%c",
input);
if
(input
==
'y')
{
goto
loop;
}
system("pause");
return
0;
}
網(wǎng)頁名稱:c語言的go循環(huán),c語言循環(huán)語句goto
鏈接地址:http://www.dlmjj.cn/article/dsggdpj.html