5-3 演習

次のすべての問題をfor文、while文、do while文で作成してください。
簡単ですが、実際に実行してみましょう。

問題1 加算

1から10まで加算して、以下のように表示してください。
合計はXXです

問題2 奇数表示

10から20までの奇数を表示してください。
以下のように表示してください。
11は基数です
13は基数です

問題3 九九の表

掛け算の九九の表を表示してください。
以下のように表示してください。
1の段 1, 2, 3, 4, 5, 6, 7. 8, 9
2の段 2, 4, 6, 8, 10, 12, 14. 16, 18

解答1

for文

int main()
{
    int sum=0;
    for (int i=1; i<=10; i++) sum += i;
    printf("合計は %d です\n", sum);
}
実行結果
合計は 55 です

while文

#include <stdio.h>

int main()
{
    int sum=0, i=1;
    while (i<=10) {
        sum += i;
        i++;
    }

    printf("合計は %d です\n", sum);
}
実行結果
合計は 55 です

do while文

#include <stdio.h>

int main()
{
    int sum=0, i=1;
    do {
        sum += i;
        i++;
    } while (i<=10);

    printf("合計は %d です\n", sum);
}
実行結果
合計は 55 です

解答2

for文

#include <stdio.h>

int main()
{
    for (int i=10; i<=20; i++) {
        if ( (i % 2)>0 ) {
            printf("%dは奇数です\n", i);
        }
    }
}
実行結果
11は奇数です
13は奇数です
15は奇数です
17は奇数です
19は奇数です

while文

#include <stdio.h>

int main()
{
    int i=10;

    while (i<=20) {
        if ( (i % 2)>0 ) {
            printf("%dは奇数です\n", i);
        }
        i++;
    }
}
実行結果
11は奇数です
13は奇数です
15は奇数です
17は奇数です
19は奇数です

do while文

#include <stdio.h>

int main()
{
    int i=10;

    do {
        if ( (i % 2)>0 ) {
            printf("%dは奇数です\n", i);
        }
        i++;
    } while(i<=20);
}
実行結果
11は奇数です
13は奇数です
15は奇数です
17は奇数です
19は奇数です

解答3

for文

#include <stdio.h>

int main()
{
    for (int i=1; i<=9; i++) {
        printf("%2dの段 ", i);
        for (int j=1; j<=9; j++) {
            printf("%2d ", i*j);
        }
        printf("\n");
    }
}
実行結果
 1の段  1  2  3  4  5  6  7  8  9
 2の段  2  4  6  8 10 12 14 16 18
 3の段  3  6  9 12 15 18 21 24 27
 4の段  4  8 12 16 20 24 28 32 36
 5の段  5 10 15 20 25 30 35 40 45
 6の段  6 12 18 24 30 36 42 48 54
 7の段  7 14 21 28 35 42 49 56 63
 8の段  8 16 24 32 40 48 56 64 72
 9の段  9 18 27 36 45 54 63 72 81

while文

#include <stdio.h>

int main()
{
    int i=1, j=1;

    while (i<=9) {
        printf("%2dの段 ", i);
        while (j<=9) {
            printf("%2d ", i*j);
            j++;
        }
        printf("\n");
        j=1;
        i++;
    }
}
実行結果
 1の段  1  2  3  4  5  6  7  8  9
 2の段  2  4  6  8 10 12 14 16 18
 3の段  3  6  9 12 15 18 21 24 27
 4の段  4  8 12 16 20 24 28 32 36
 5の段  5 10 15 20 25 30 35 40 45
 6の段  6 12 18 24 30 36 42 48 54
 7の段  7 14 21 28 35 42 49 56 63
 8の段  8 16 24 32 40 48 56 64 72
 9の段  9 18 27 36 45 54 63 72 81

do while文

#include <stdio.h>

int main()
{
    int i=1, j=1;

    do {
        printf("%2dの段 ", i);
        do {
            printf("%2d ", i*j);
            j++;
        } while (j<=9);
        printf("\n");
        j=1;
        i++;
    } while (i<=9);
}
実行結果
 1の段  1  2  3  4  5  6  7  8  9
 2の段  2  4  6  8 10 12 14 16 18
 3の段  3  6  9 12 15 18 21 24 27
 4の段  4  8 12 16 20 24 28 32 36
 5の段  5 10 15 20 25 30 35 40 45
 6の段  6 12 18 24 30 36 42 48 54
 7の段  7 14 21 28 35 42 49 56 63
 8の段  8 16 24 32 40 48 56 64 72
 9の段  9 18 27 36 45 54 63 72 81

コメント

タイトルとURLをコピーしました