![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
while循環和for循環的循環繼續條件檢查是在循環體執行以前進行的,稱爲前置檢測循環,循環體執行次數最少爲0次;do-while循環的循環繼續條件檢查是在循環體執行以後進行的,稱爲後置檢測循環,循環體執行次數最少爲1次。而for語句最爲靈活。在必定條件下,三者能夠相互取代。web
基於代碼易讀性考慮,編寫程序處理循環結構時,選擇哪種循環語句沒有嚴格規定,幾個經常使用的規則以下:微信
1.若是循環次數已經知道的狀況使用for語句;app
2.循環次數不肯定的狀況使用while語句;編輯器
3.若是須要在檢查循環繼續條件以前執行循環體,則使用do-while語句。flex
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
一個循環語句的循環體內包含另外一個完整的循環語句,稱爲循環的嵌套。循環的嵌套能夠有不少層,一個循環的內嵌一層循環叫雙層循環嵌套,簡稱雙重循環。在循環嵌套的內層循環中再內嵌一層或多層循環語句能夠造成多重循環。ui
例:編寫程序輸出九九乘法表。url
思路分析:九九乘法表由9行構成,第1行有1個乘法等式,第2行有2個乘法等式,依此類推。解決這類問題時,能夠採用逐步分析的方法,分析思路以下:spa
(1) 首先考慮如何須要輸出9行數據。能夠設計以下的循環結構,該循環用於控制行的輸出,每循環執行循環體一次,就輸出一行。.net
for(i=1; i<=9; i++)設計
{
輸出第i行;
}
(2) 而後考慮若是輸出第i行。根據分析,第i行由i個乘法等式和一個換行字符組成,所以能夠設計一個循環結構輸出i個乘法等式,而後再輸出一個換行。
(3) 最後將上述分析的循環結構進行嵌套,能夠獲得程序的總體結構。
參考代碼:
1 #include <stdio.h>
2 int main()
3 {
4 int i, j;
5 for(i=1; i<=9; i++)
6 {
7 for(j=1; j<=i; j++)
8 {
9 printf("%d*%d=%2d ", i,j,i*j);
10 }
11 printf("\n");
12 }
13 return 0;
14 }
結果示例;
![](http://static.javashuo.com/static/loading.gif)
掃碼關注
更多精彩
![qrcode_for_gh_05453579ed9d_258.jpg](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
本文分享自微信公衆號 - 電子榮耀(gh_05453579ed9d)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。