問題をやってみましょう
実際に演習問題をやってみましょう。
見るのと、実行するのでは大きく違うのですよ。
簡単だと思っても、実行してみましょう。
これが大きな力になります。
問題1 点数判定
int型の変数 tensu にテストの点をセットして以下の判定(カッコ内)を表示してください。
60点未満なら「再試験です」
60点以上~80点未満なら「合格です」
80点以上なら「エクセレントです」
1回目は tensu = 30 で実行し、2回目以降は、60, 80. 90で実行してください。
問題2 偶数奇数判定
int型の変数 val に数字をセットし、偶数、奇数を表示してください。
表示方法は以下のように行ってください。
「xxは偶数です」
「xxは奇数です」
xxは数値の値です。
1回目は val = 4 で実行し、2回目は 5 で実行してください。
問題3 身長比較
int型の変数にのぞみちゃんの身長168センチを入れ、
int型の変数にりほちゃんの身長158センチを入れて、
「XXちゃんはXXちゃんよりXXセンチ身長が高い」
と表示してください。
問題4 論理式
次の1行のif文を書いてください(3問です)。
プログラミングは必要ありません。
x が10以上で、かつ20以下であるならば、y に1をセット
x が10未満、または20より大きいならば、y に1をセット
x が10より大きくないならば、y に1をセット
問題5 論理演算
次の論理演算の結果、真になるか偽になるかを表に書き込んでください。
式 | 結果(真・偽) |
---|---|
10>2 && 10<=15 | |
12>3 && 15>30 | |
80<=7 && 39>20 | |
30<5 && 10>20 | |
16>7 || 10>8 | |
31>11 || 7<3 | |
20<10 || 15>5 | |
15<3 || 20<10 | |
!(10 <= 2) | |
!(5 == 5) | |
(1==1 || 1==2) && 3==3 | |
(1==1 || 1==2) && 3 !=3 | |
!((1==1 || 1==2) && 3 !=3) |
解答
正解したか確認してください。
コンパイルと実行の方法を忘れた方は、こちらへどうぞ。
プログラムのファイル名は適当に命名してください。
解答1
#include <stdio.h>
int main()
{
int tensu = 80; // 変更して実行する
if (tensu < 60) {
printf("再試験です\n");
} else if (tensu < 80) {
printf("合格です\n");
} else {
printf("エクセレントです\n");
}
return 0;
}
60点ジャストとか80点ジャストの点の時に注意してくださいね。
変数は宣言と同時に値を入れることもできます。
解答2
#include <stdio.h>
int main()
{
int val = 5; // 変更して実行する
int amari;
amari = val % 2; //2で割った余り
if (amari > 0) {
printf("%d は奇数です\n", val);
} else {
printf("%d は偶数です\n", val);
}
return 0;
}
解答3
#include <stdio.h>
int main()
{
int nozomi = 168; //のぞみちゃん
int riho = 158; //りほちゃん
int sa;
sa = nozomi - riho; //身長差
if (sa > 0) {
// のぞみが高い
printf("のぞみちゃんは、りほちゃんより %d センチ身長が高い\n", sa);
} else {
// のぞみが低い
printf("りほちゃんは、のぞみちゃんより %d センチ身長が高い\n", -sa);
}
return 0;
}
のぞみちゃんと、りほちゃんの身長を逆転して確認してくださいね。
上記の例ではprintfのパラメータ、-saに注意してください。
saはマイナス値なので、符号を付けて正の値に戻しています。
解答4
x が10以上で、かつ20以下であるならば、y に1をセット
⇒ if (x>=10 && x<=20) y = 1;
x が10未満、または20より大きいならば、y に1をセット
⇒ if (x<10 || x>20) y = 1;
x が10より大きくないならば、y に1をセット
⇒ if (!(x>10)) y = 1;
解答5
式 | 結果 |
---|---|
10>2 && 10<=15 | 真 |
12>3 && 15>30 | 偽 |
80<=7 && 39>20 | 偽 |
30<5 && 10>20 | 偽 |
16>7 || 10>8 | 真 |
31>11 || 7<3 | 真 |
20<10 || 15>5 | 真 |
15<3 || 20<10 | 偽 |
!(10 <= 2) | 真 |
!(5 == 5) | 偽 |
(1==1 || 1==2) && 3==3 | 真 |
(1==1 || 1==2) && 3 !=3 | 偽 |
!((1==1 || 1==2) && 3 !=3) | 真 |
コメント