2024 年度「プログラミング」中間テスト・解答例

全体

ペーパーテスト

  1. 以下のプログラムは動作はするがインデンテーションが滅茶苦茶でプログラム の構造を正しく反映していない。(そして、おそらく作成者の意図したように は動かない。)プログラムの構造を明確にするために if 文、if 〜 else 文、for 文、while 文は「インデンテーションの約束事」(別紙)の 5.「鉄の掟」に従って、 必ずブレースを使用するように(ただしプログラムの意味(実行結果)が変わらないように)書き換え、さらに 「インデンテーションの約束事」の 0. 〜 4. に従ってインデントしなおせ。

    解答は、最初の #include <stdio.h> は省略せよ。 また、解答欄のスペースの都合で、(最後は別として)空行は入れずに記入せよ。

  2. 次のプログラムは一つの値を読み込んで、 それを 1.111 倍した値と、整数として 3 で割った値を表示するプログラムである。 たとえば、100 を入力すると、

    整数を入力して下さい: 100
    入力値を 1.111 倍すると 111.100000
    入力値を整数として 3 で割ると 33
    

    と出力する。 空欄を埋めて、プログラムを完成せよ。

  3. 次のプログラムの出力を書け。

  4. 以下の空欄を埋めて、 100 以上 300 以下の 3 の倍数をすべて降順 (つまり、300, 297, 294, …, の順)に出力するプログラムを完成させよ。

  5. 以下のプログラムは、整数の組のデータを (i,j) という形式で出力する。 このプログラムの出力を書け。ただし、この問題の解答では、 空白は明示的に空白記号()を、 改行は矢印()を書くこと。

オンラインテスト


Koji Kagawa