次のすべての問題を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
コメント