C語言初級講座之迴圈結構

來源:互聯網
上載者:User

迴圈結構是程式中一種很重要的結構。其特點是,在給定條件成立時,反覆執行某程式段,直到條件不成立為止。給定的條件稱為迴圈條件,反覆執行的程式段稱為迴圈體。C語言提供了多種迴圈語句,可以組成各種不同形式的迴圈結構。

while語句

while語句的一般形式為:while(運算式)語句; 其中運算式是迴圈條件,語句為迴圈體。

while語句的語義是:計算運算式的值,當值為真(非0)時,執行迴圈體語句。其執行過程可用圖3—4表示。統計從鍵盤輸入一行字元的個數。

#include <stdio.h>
void main(){
int n=0;
printf("input a string:\n");
while(getchar()!='\n') n++;
printf("%d",n);
} int n=0;
printf("input a string:\n");
while(getchar()!='\n')
n++;
printf("%d",n);

本常式序中的迴圈條件為getchar()!='\n',其意義是,只要從鍵盤輸入的字元不是斷行符號就繼續迴圈。迴圈體n++完成對輸入字元個數計數。從而程式實現了對輸入一行字元的字元個數計數。

使用while語句應注意以下幾點:

1.while語句中的運算式一般是關係表達或邏輯運算式,只要運算式的值為真(非0)即可繼續迴圈。

void main(){
    int a=0,n;
    printf("\n input n: ");
    scanf("%d",&n);
    while (n--)
    printf("%d ",a++*2);
} int a=0,n;
printf("\n input n: ");
scanf("%d",&n);
while (n--)
printf("%d ",a++*2);

本常式序將執行n次迴圈,每執行一次,n值減1。迴圈體輸出運算式a++*2的值。該運算式等效於(a*2;a++)

2.迴圈體如包括有一個以上的語句,則必須用{}括起來,組成複合陳述式。

3.應注意迴圈條件的選擇以避免死迴圈。

void main(){
    int a,n=0;
    while(a=5)
    printf("%d ",n++);
} int a,n=0;
while(a=5)
printf("%d ",n++);

本例中while語句的迴圈條件為賦值運算式a=5,因此該運算式的值永遠為真,而迴圈體中又沒有其它中止迴圈的手段,因此該迴圈將無休止地進行下去,形成死迴圈。4.允許while語句的迴圈體又是while語句,從而形成雙重迴圈。

相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。