【C言語】左上が直角の三角形を表示する方法を解説

この記事では、C言語を使って左上が直角の三角形を表示する方法を解説します。

目次から探す

左上が直角の三角形を表示する方法

プログラミングにおいて、左上が直角の三角形を表示する方法はいくつかあります。

ここでは、ネストしたループを使用する方法と単一のループを使用する方法について解説します。

方法1: ネストしたループを使用する方法

ネストしたループを使用する方法では、外側のループで行数を制御し、内側のループで各行の列数を制御します。

具体的なコード例を示します。

#include <stdio.h>
int main() {
    int rows;
    printf("三角形の行数を入力してください: ");
    scanf("%d", &rows);
    for (int i = 1; i <= rows; i++) {
        for (int j = 1; j <= i; j++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

上記のコードでは、ユーザーに行数を入力してもらい、その行数分の三角形を表示します。

外側のループで行数を制御し、内側のループで各行の列数を制御しています。

内側のループでは、*を表示しています。

各行の末尾には改行文字を出力して、次の行に移ります。

以下は、行数を5とした場合の実行結果の例です。

三角形の行数を入力してください: 5
* 
* * 
* * * 
* * * * 
* * * * *

方法2: 単一のループを使用する方法

単一のループを使用する方法では、ループ変数の値を利用して行数と列数を制御します。

具体的なコード例を示します。

#include <stdio.h>
int main() {
    int rows;
    printf("三角形の行数を入力してください: ");
    scanf("%d", &rows);
    for (int i = 1; i <= rows * (rows + 1) / 2; i++) {
        printf("* ");
        if (i % rows == 0) {
            printf("\n");
        }
    }
    return 0;
}

上記のコードでは、ユーザーに行数を入力してもらい、その行数分の三角形を表示します。

単一のループを使用して、ループ変数の値を利用して行数と列数を制御しています。

*を表示した後、ループ変数が行数の倍数の場合に改行文字を出力して、次の行に移ります。

以下は、行数を5とした場合の実行結果の例です。

三角形の行数を入力してください: 5
* 
* * 
* * * 
* * * * 
* * * * *

以上が、左上が直角の三角形を表示する方法の解説です。

ネストしたループを使用する方法と単一のループを使用する方法のどちらを選ぶかは、プログラムの要件や好みによって異なります。

適切な方法を選んで、三角形を表示するプログラムを作成してみてください。

目次から探す