c語(yǔ)言楊輝三角形右對(duì)齊怎么實(shí)現(xiàn)

小億
145
2024-01-26 14:46:08

實(shí)現(xiàn)楊輝三角形的右對(duì)齊,可以按照以下步驟進(jìn)行:

  1. 定義一個(gè)二維數(shù)組來存儲(chǔ)楊輝三角形的元素。數(shù)組的行數(shù)為楊輝三角形的行數(shù),列數(shù)為楊輝三角形的最大行數(shù)。
  2. 使用兩層循環(huán),外層循環(huán)控制行數(shù),內(nèi)層循環(huán)控制每一行的元素。
  3. 在內(nèi)層循環(huán)中,通過判斷當(dāng)前元素的位置是否小于等于行數(shù),來確定是否需要打印空格。如果需要打印空格,則打印一個(gè)空格;否則,打印當(dāng)前元素的值。
  4. 在內(nèi)層循環(huán)結(jié)束后,打印換行符,進(jìn)入下一行的循環(huán)。

下面是一個(gè)實(shí)現(xiàn)楊輝三角形右對(duì)齊的示例代碼:

#include <stdio.h>

int main() {
    int rows, i, j;
    printf("請(qǐng)輸入楊輝三角形的行數(shù):");
    scanf("%d", &rows);

    int triangle[rows][rows];
    
    for (i = 0; i < rows; i++) {
        for (j = 0; j <= i; j++) {
            if (j < rows - i - 1) {
                printf(" ");
            } else {
                if (j == 0 || j == i) {
                    triangle[i][j] = 1;
                } else {
                    triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
                }
                printf("%d ", triangle[i][j]);
            }
        }
        printf("\n");
    }

    return 0;
}

在上述代碼中,使用了一個(gè)二維數(shù)組 triangle 來存儲(chǔ)楊輝三角形的元素。在內(nèi)層循環(huán)中,通過判斷當(dāng)前元素的位置是否小于等于行數(shù)來確定是否需要打印空格。如果需要打印空格,則打印一個(gè)空格;否則,打印當(dāng)前元素的值。通過這樣的方式實(shí)現(xiàn)了楊輝三角形的右對(duì)齊打印效果。

0