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

ペーパーテスト

  1. 以下のプログラムは動作はするがインデンテーションが滅茶苦茶でプログラム の構造を正しく反映していない。(そして、おそらく作成者の意図したように は動かない。)プログラムの構造を明確にするために「プログラミング」の インデンテーションの約束事(別紙)に厳密に従って(特に 5 番目のルー ルに注意)、必要に応じてブレースを挿入し、インデントしなおせ。ただし、 ブレース内の字下げは紙幅の制限のため 3 文字分とせよ。

    もちろん、プログラムの意味(実行結果)が変わらないようにすること。 (つまり、作成者の(よくわからない)意図を忖度するのではなく、 コンパイラーが解釈する通りにインデントすること。)

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

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

    整数を入力して下さい: 8
    それを整数として 3 で割った値は 2 です。
    それを 3.3 倍した値は 26.4000000 です。
    

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

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

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

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

感想

プログラミングとは関係ないことだが、感想の中で余りにも同じ漢字の間違いが多いので気になる。 「講議」(誤)ではなくて「講義」(正)である。

オンラインテスト


Koji Kagawa