作者:
elvispoetic (RESTful Web Services)
2019-08-23 09:34:28※ 引述《cutekid (可愛小孩子)》之銘言:
: 我用 C 寫
: main(void)
: {
: int n=5,k=2*n-1;
: for(int i=0;i<n*k;i++){
: if(abs(i-i/k*k-n+1)>i/k) putchar(' ');
: else putchar('*');
: if((i+1)%k==0) puts("");
: }
: }
: 執行網址: https://rextester.com/IKCI74317
補充一下這個範例的思路
一、基本的做法
會使用兩個迴圈,一個回圈控制輸出每一行,內層的迴圈(Nested Loop)則控制
每一行顯示的內容。
二、使用一個迴圈的做法
假設 N = 3
*
***
*****
那個其實你要輸出的是 15 的字元,這十五個字元包含「空白字元、星號、換行
字元」,如果把它依序寫下來的話會是
_ _ * + _ * * * + * * * * * +
註:上面用底線表示空白字元,加號表示換行字元
順著這個思路你就可以寫出一個迴圈的寫法了