練習 2(提出プログラム名:p1002a.c)
まず,このプログラム(p1002a.c)をダウンロードしなさい.
p1002a.c では,整数(ただし,10 以上と仮定してよい)を読み込んで int 型変数 x に格納した後,
関数 round1 を使って「x の値」を「x の 1 の位を四捨五入した値」に書き換え,
最後に書き換え後の x を表示させている.
関数 round1 を完成させなさい.
ただし,round1 の宣言は void round1( int *px ) で始めるものとし,これを変更してはいけません.
あわせて,main 関数の内容を変更してもいけません.
【ヒント】
四捨五入を行う方法はいくつかありますが,例えば,
x を 10 で割った余り(仮に d とします)を求めれば,それが 1 の位の数字になりますのでそれを使うという手があります: d < 5 かどうかで切り捨てと切り上げのいずれになるかが決まります.
- 【プログラムの実行例】(その1)※赤字は実行時にキーボードから入力する内容
整数を 1 つ入力してください:53 1 の位を四捨五入した値 = 50⏎
- 【プログラムの実行例】(その2)※赤字は実行時にキーボードから入力する内容
整数を 1 つ入力してください:16 1 の位を四捨五入した値 = 20⏎
- 【プログラムの実行例】(その3)※赤字は実行時にキーボードから入力する内容
整数を 1 つ入力してください:315 1 の位を四捨五入した値 = 320⏎
【過去にあったミス(減点となり,やり直しを命じられる)】
■ 3 種類の実行例を確認せずに提出してしまっている.
例えば,切り捨てと切り上げの判定を間違っている.
■ round1 の引数や戻り値の型を変更してしまっている.
■ main 関数を書き換えてしまっている.
■ インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).
← [ 練習1 (p1001a.c) ]
ミスが無いことを確認したら次の問題へ → [ 練習3 (p1003a.c) ]