C語言基礎七:循環結構

1.問題引入
    輸入50個同學的成績,並且求平均值
    int grade1,grade2,grade3;
    int sum=0;
    scanf("%d",&grade1);
    sum+=grade1;
    scanf("%d",&grade2);
    sum+=grade2;
    scanf("%d",&grade3);
    sum+=grade3;
1.goto if(本身if和goto都不是循環結構,但是湊合在一起就可以組成循環結構)
        goto 標號段;
        標號段:一個合法的標識符
        規則:無條件的轉去"標號段"執行
        1.寫一個1+2+3+..100計算結果
2.while
    while(表達式)
    {
        語句;
    }
    
        表達式:合法的表達式即可,(可以是常量表達式)
        語句:
            單語句(只有一個;的語句)
            複合語句:
                    if /while/switch/do while();/
                    {}
    規則:如果表達式爲真,則執行語句,
            再判斷表達是否爲真,如果是真繼續執行語句
            再判斷表達是否爲真,如果是真繼續執行語句
            直到表達式爲假(不滿足條件)
    ex.求100以內3的倍數,0 1 2....100
        1)找到一個輸出一個,
        2)並且求出一共有幾個
3.do while
    do
    {
        語句;
    }while(表達式);
    執行流程:先執行語句,再判斷是否滿足條件,如果表達式爲非0,繼續執行語句,再判斷...
                            直到不滿足條件爲止就跳出循環
    ex.用do while();求n!  n=n*(n-1)*(n-1)*....*1
4.for循環
    for(表達式1;表達式2;表達式3)
    {
        語句;
    }
        表達式:合法的表達式即可,(可以是常量表達式)
        語句:
            單語句(只有一個;的語句)
            複合語句:
                    if /while/switch/do while();/
                    {}
    執行流程:先執行表達式1,再判斷表達式2是否爲真,如果爲真,執行語句,在執行表達式3
                            再判斷表達式2是否爲真,如果爲真,執行語句,在執行表達式3...
                            直達表達式2不滿足
    每個表達式是可以省略的
    for(;;)//死循環
    {
    }
    break;跳出當前循環
    continue:跳出當前一次循環(如果執行continue,在continue後的代碼都不會執行)
                    ex1.
                        輸入一個數,求一個數各個位數
                        如:輸入:112  
                            輸出: 1 1 2
                    
                        
                    
                    
        

發佈了60 篇原創文章 · 獲贊 4 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章