循環語句的嵌套 一個循環結構內可以含有另一個循環,稱為循環嵌套,又稱多重循環。常用的循環嵌套是二重循環,外層循環稱為外循環,內層循環稱為內循環。 ---------不知道哪來的基礎概念
這是本寶寶的第一篇博客,不求多人氣,也不求多贊揚,每天總結一篇當日的學習內容,文中如有明顯或者較小細節錯誤,事無巨細,請務必留言指正~
一、嵌套循環
嵌套循環撇開裝逼的名字不談,其實就是在while.do...while,for三種常用循環結構的作用域內再度使用三種循環結構的一種解題模式,二重嵌套和多重嵌套的思維與二維數組多維數組的
概念是有相似之處的,仔細想想就覺得,
#include <stdio.h> int main(int argc, const char * argv[]) { for(int i = 1; i <= 10; i++)//外層循環.循環1次就要打印1行. { for(int j = 0; j <10;j++) { for (int k=0; k<=10; k++) { ..... } } }
和 int [10][10][10]區別只是一個存儲循環次數,一個存儲元素而已
事實上(因為上課沒咋聽的緣故),在考試題裡看到嵌套循環的時候...心想這尼瑪這麼簡單還要出個別名...(計算機業裡面的裝逼名次實在是太多)
二、實例:九九乘法表
首先整理思路:
1、九九表一共有9行.所以,毫無疑問,應該寫1個循環 循環9次,每次打印1行.
2、因為九九表有9列,且因為每行的式子數剛好等於行號,行號最大為9,所以嵌套內循環停止條件:j<=i ;
3、參考打印式樣板 行號 * 列號 = 結構 i * j = result;
#include <stdio.h> int main(int argc, const char * argv[]) { for(int i = 1; i <= 9; i++)//外層循環,循環1次 要完成1行的打印. { for(int j = 1; j <= i;j++) { //'\t' 代表1個制表符 Tab鍵.對齊 printf("%d * %d = %d\t",j,i,i*j); } printf("\n"); } return 0; }
三、代碼結構總結
大致上新手號開局有三種職業可選:新手:順序結構,中級:循環結構,高級:分支結構,在沒有函數調用參與的情況下這三種結構的執行模式是:
1、順序結構
代碼由上至下一行行執行,並且每一行都能執行到,這個稱作順序結構
2、分支結構
if和swich-case這兩個函數使用的結構我們稱為分支結構,他們使得c語言代碼增添了更多的細節分支,靈活使用if,if..else,if..else if..(else),和swich的break和default
可以讓代碼的邏輯變得更加貼近,對於他們兩我們又稱為判斷結構和選擇結構
3、循環結構
同一段代碼,反復不停的執行指定的次數
while,do..while,for為主要的循環結構
順便說一下三種死循環的常用方式:while(1),do....while(1),for ( ; ;),
順序和分支結構並不會產生代碼回朔,所以需要重復的地方,就恰當的使用循環結構