方陣之上三角

2022-03-19 02:50:23 字數 1286 閱讀 1321

方陣的主對角線之上稱為「上三角」。

請你設計乙個用於填充n

階方陣的上三角區域的程式。填充的規則是:使用1,

2,3….的自然數列,從左上角開始,按照順時針方向螺旋填充。

例如:當n=3

時,輸出:

1 2 3

6 45

當n=4

時,輸出:

1  2 3 4

9 10 5

8  6

7當n=5

時,輸出:

1  2  3  4  5

12 13 14  6 

11 15  7

10  8

9程式執行時,要求使用者輸入整數n

(3~20

)程式輸出:方陣的上三角部分。

要求格式:每個資料寬度為4

,右對齊。

分析:主要是根據當前數是在第幾圈中,其中nturn是記錄當前在第幾圈裡面。

源**:

1 #include 2 #include 34

intmain()5;

89intn;

10 scanf("

%d", &n);

1112

int front = 1; //

當前要填充的數

13int last = n * (n + 1) / 2; //

輸入n時,最後乙個數的值

1415

int i, j, nturn = 0; //

nturn記錄當前是在第幾圈裡面

1617

while(front <=last)

1827

28 i = nturn + 1

; 29 j = n - (nturn - 1) * 2 - 1;30

for(; i <= n - (nturn - 1) * 2 && j>= nturn; i++, j--)//

填充每一圈斜對角線

3134

35 i = n - (nturn - 1) * 2 - 1

; 36 j =nturn;

37for(; i >= nturn + 1; i--) //

填充每一圈豎排

3841}42

43for(i = 1; i <= n; i++)

4449 printf("\n"

);50}51

52return0;

53 }

上三角矩陣下三角矩陣

要求給定矩陣,輸出其上三角矩陣或下三角矩陣 源 如下 include include include include const int m 5 void proc int array m m void main printf n proc a printf result array is n fo...

python楊輝三角 楊輝三角I II

給定乙個非負整數 numrows,生成楊輝三角的前 numrows 行。在楊輝三角中,每個數是它左上方和右上方的數的和。示例 輸入 5 輸出 1 1,1 1,2,1 1,3,3,1 1,4,6,4,1 可以一行一行錯位加,當然這裡提供更簡便的方法。任取一行描述 1,2,1 如何得到 1,3,3,1 ...

sicp練習1 12 帕斯卡三角(楊輝三角)

楊輝三角以前在學習c語言時候,用迴圈很容易實現。由於剛剛接觸函式式語言,遞迴和迭代方式實現迴圈還沒深入我心。下意思的想用鍊錶來實現,但發現自己對scheme的鍊錶操作太不熟悉,總會出現這樣那樣子的無法自我解釋的問題。最後參考了 dennis zane 的pascal實現,dennis zane 是把...