程序中的語句通�?偸前错樞蚍较�, 或按語句功能所定義的方向執(zhí)行的。如果需要改變程序的正常流向, 可以使用本小節(jié)介紹的轉(zhuǎn)移語句。在C語言中提供了4種轉(zhuǎn)移語句:
goto,break, continue和return。
其中的return語句只能出現(xiàn)在被調(diào)函數(shù)中, 用于返回主調(diào)函數(shù),我們將在函數(shù)一章中具體介紹。 本小節(jié)介紹前三種轉(zhuǎn)移語句。
1.goto語句
goto語句也稱為無條件轉(zhuǎn)移語句,其一般格式如下: goto 語句標號; 其中語句標號是按標識符規(guī)定書寫的符號, 放在某一語句行的
前面,標號后加冒號(:)。語句標號起標識語句的作用,與goto 語句配合使用。
如: label: i++;
loop: while(x<7);
C語言不限制程序中使用標號的次數(shù),但各標號不得重名。goto語句的語義是改變程序流向, 轉(zhuǎn)去執(zhí)行語句標號所標識的語句。
goto語句通常與條件語句配合使用�?捎脕韺崿F(xiàn)條件轉(zhuǎn)移, 構(gòu)成循環(huán),跳出循環(huán)體等功能。
但是,在結(jié)構(gòu)化程序設(shè)計中一般不主張使用goto語句, 以免造成程序流程的混亂,使理解和調(diào)試程序都產(chǎn)生困難。
統(tǒng)計從鍵盤輸入一行字符的個數(shù)。
#include"stdio.h"
void main(){
int n=0;
printf("input a string\n");
loop: if(getchar()!='\n')
{
n++;
goto loop;
}
printf("%d",n);
} int n=0;
printf("input a string\n");
loop: if(getchar()!='\n')
{
n++;
goto loop;
}
printf("%d",n);
本例用if語句和goto語句構(gòu)成循環(huán)結(jié)構(gòu)。當輸入字符不為'\n'時即執(zhí)行n++進行計數(shù),然后轉(zhuǎn)移至if語句循環(huán)執(zhí)行。直至輸入字符為'\n'才停止循環(huán)。
相關(guān)推薦:
2012年信息處理員考試考點匯總
2012年上半年軟件水平考試成績查詢預(yù)告匯總
2012年軟件水平考試網(wǎng)絡(luò)工程師章節(jié)筆記講義匯總