C++迴圈結構&&多重迴圈
阿新 • • 發佈:2021-01-06
多重迴圈就是在迴圈結構的迴圈體中又出現迴圈結構。
在實際開發中一般最多用到三層重迴圈。因為迴圈層數越多,執行時間越長,程式越複雜,所以一般用2-3層多重迴圈就可以了。
另外不同迴圈之間也是可以巢狀的。
多重迴圈在執行的過程中,外層迴圈為父迴圈,內層迴圈為子迴圈,父迴圈一次,子迴圈需要全部執行完,直到跳出迴圈。父迴圈再進入下一次,子迴圈繼續執行
裡面的不管全是for、while、do-while還是三者結合,都遵循上面的原則。
Question:用程式寫一個程式碼,打印出這樣的小星星。
兄弟們一看,這還不簡單?
四行printf("*")不就完事啦?
我說,看題,大兄弟。
用程式碼寫!!!
你這樣printf小學生都會啊。
那程式碼怎麼寫?
用多重迴圈結構嘛。
#include <stdio.h>
int main()
{
int i, j, k;
for(i=1; i<5; i++)//迴圈從1開始到4結束,一共有4行小星星
{
for(j=i;j<5;j++)//這個是列印空格的,距離開頭有幾個格
{
printf(" ");
}
for(k=0;k<2*i-1;k++) //“*”的數量剛好符合f=2x-1(程式碼用2 * i)
{
printf("*"); //每行輸出的*號
}
printf("\n"); //每次迴圈換行
}
return 0;
}
簡簡單單~
再整個乘法口訣表?
#include <stdio.h>
int main()
{
// 定義相乘數字i,j以及結果result
int i, j, result;
for(i=9;i>0;i--){//從9開始遞減
for(j=1;j<=i;j++){ //從一開始遞增,並且遞增的最大值不能超過i
result=i*j;
printf("%d*%d=%d\t",i,j,result);// “\t”是橫向跳格
}//j
printf("\n");
}//i=9
return 0;
}