<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                #### 循環結構之while循環 反復不停的執行某個動作稱之謂循環,C語言中有三種循環結構,先看一下C語言while循環的結構 ![](http://img.mukewang.com/548806bd000110e701630094.jpg) 其中表達式表示循環條件,執行代碼塊為循環體。while語句的語義是:計算表達式的值,當值為真(非0)時, 執行循環體代碼塊。其執行過程可用下圖表示: ![](http://img.mukewang.com/549c07040001234e02690240.jpg) 代碼 ![](http://img.mukewang.com/5493d2860001d5b403450113.jpg) 使用while語句應注意以下幾點: - while語句中的表達式一般是關系表達或邏輯表達式,當表達式的值為假時不執行循環體,反之則循環體一直執行。 - 一定要記著在循環體中改變循環變量的值,否則會出現死循環(無休止的執行)。 - 循環體如果包括有一個以上的語句,則必須用{}括起來,組成復合語句 #### 循環結構之do-while循環 #### C語言中的do-while循環,一般形式如下: ![](http://img.mukewang.com/548819f20001d4a503140091.jpg) do-while循環語句的語義是:它先執行循環中的執行代碼塊,然后再判斷while中表達式是否為真,如果為真則繼續循環;如果為假,則終止循環。因此,do-while循環至少要執行一次循環語句。其執行過程可用下圖表示: ![](http://img.mukewang.com/54af7bac0001998702050189.jpg) 代碼 ![](http://img.mukewang.com/5493d2b400013ad103470109.jpg) **注意:使用do-while結構語句時,while括號后必須有分號。** #### 循環結構之for循環(一) #### 在C語言中還有一種更加靈活的循環,它完全可以秒殺前面兩種循環結構,因為它相對前兩種循環結構語法更直接、簡單。它的一般形式為: ![](http://img.mukewang.com/54890cf000013b1303130095.jpg) **它的執行過程如下:** * 第一步:執行表達式1,對循環變量做初始化; * 第二步:判斷表達式2,若其值為真(非0),則執行for循環體中執行代碼塊,然后向下執行;若其值為假(0),則結束循環; * 第三步:執行表達式3; * 第四步:執行for循環中執行代碼塊后執行第二步; * 第五步:循環結束,程序繼續向下執行。 其執行過程可用下圖表示: ![](http://img.mukewang.com/549c0bce0001a0e404290203.jpg) 例:小明下決心抄10遍computer這個單詞,用for循環實現如下: ![](http://img.mukewang.com/5493d2e30001dc0103510095.jpg) **注意:for循環中的分號一定要寫** #### 循環結構之for循環(二) 在for循環中,表達式1是一個或多個賦值語句,它用來控制變量的初始值;表達式2是一個關系表達式,它決定什么時候退出循環;表達式3是循環變量的步進值,定義控制循環變量每循環一次后按什么方式變化。這三部分之間用分號(;)分開。 **使用for語句應該注意:** **1、for循環中的“表達式1、2、3”均可可以缺省,但分號(;)不能缺省** **2、省略“表達式1(循環變量賦初值)”,表示不對循環變量賦初始值。如:** ![](http://img.mukewang.com/5489349f0001f9e304510088.jpg) **3、省略“表達式2(循環條件)”,不做其它處理,循環一直執行(死循環)。如:** ![](http://img.mukewang.com/548935e70001c38c04670092.jpg) **4、省略“表達式3(循環變量增量)”,不做其他處理,循環一直執行(死循環)。如:** ![](http://img.mukewang.com/548a9c4400018a5004670092.jpg) **注:死循環可以使用后面即將講到的break解決** **5、表達式1可以是設置循環變量的初值的賦值表達式,也可以是其他表達式。如:** ![](http://img.mukewang.com/5489393d0001d8f004470127.jpg) **6、表達式1和表達式3可以是一個簡單表達式也可以是多個表達式以逗號分割。如:** ![](http://img.mukewang.com/54893a90000129b504840126.jpg) 運行結果為 ![](http://img.mukewang.com/54893ac100018be101090060.jpg) **7、表達式2一般是關系表達式或邏輯表達式,但也可是數值表達式或字符表達式,只要其值非零,就執行循環體。** ![](http://img.mukewang.com/54893b9000018c6d05260127.jpg) **8、各表達式中的變量一定要在for循環之前定義。如:** ![](http://img.mukewang.com/54893ead00015c3305940115.jpg) #### 循環結構之三種循環比較 while、do-while和for三種循環在具體的使用場合上是有區別的,如下: * 1、在知道循環次數的情況下更適合使用for循環; * 2、在不知道循環次數的情況下適合使用while或者do-while循環,如果有可能一次都不循環應考慮使用while循環,如果至少循環一次應考慮使用do-while循環。 但是從本質上講,while,do-while和for循環之間是可以相互轉換的,如:小明被老師罰抄10次computer這個單詞,分別用三種語法寫: ![](http://img.mukewang.com/54895a8f0001bc9e06840112.jpg) #### 循環結構之多重循環 多重循環就是在**循環結構的循環體中又出現循環結構。** 在**實際開發中一般最多用到三層重循環**。因為循環層數越多,運行時間越長,程序越復雜,所以**一般用2-3層多重循環就可以了**。另外不同循環之間也是可以嵌套的。 多重循環在執行的過程中,外層循環為父循環,內層循環為子循環,父循環一次,子循環需要全部執行完,直到跳出循環。父循環再進入下一次,子循環繼續執行... ![](http://img.mukewang.com/54898b5d00017ca606480381.jpg) > 注:一個父循環可以有多個子循環 那么上面這個用“*”輸出的矩形用多重循環實現如下: ![](http://img.mukewang.com/54897d680001109e02810242.jpg) 雙重循環實現輸出正三角形,效果如下 ![](http://img.mukewang.com/54897f3a000182dc00670067.jpg) 代碼 #include <stdio.h> int main() { int i, j, k; for(i=1; i<5; i++)//控制每一行 { for( j = i ; j < 5 ; j++) { printf(" ");//將空格換成其他符號,就可以發現規律 } for( k = 0 ; k < i * 2 - 1 ; k++ ) { printf("*"); } printf("\n"); } return 0; } 將空格換成其他符號比如“^”就會發現規律,如下圖輸出結果所示 ![](http://i.imgur.com/n4gWrUY.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看