問 4(提出プログラム名:ex0804.c)
このプログラム(ex0804.c)をダウンロードし,その中の関数 print_array_part を完成させなさい.
関数 print_array_part では,引数として配列 a と 2 つの整数 left, right が与えられ,配列 a の一部の要素 a[left] ~ a[right] だけを実行例のように出力するものとする.
ただし,この問題では if 文を使ってはいけません(if 文を使おうとする人が稀にいますが,if 文は不要です).
また,関数 main の内容は一切書き換えないこと.
配列の長さはマクロ SIZE で定義されており,0 ≦ left ≦ right < SIZE であると仮定してプログラムを作ってよい.
なお,マクロ定義以外の箇所で 10 と直接書いてはいけません.
- 【プログラムの実行結果】(その1)※赤字は実行時にキーボードから入力する内容
10 個の整数を入力してください:⏎ 9 5 0 2 -6 10 7 3 6 13 どこからどこまで表示させますか:⏎ 2 5 a[2] = 0⏎ a[3] = 2⏎ a[4] = -6⏎ a[5] = 10⏎
- 【プログラムの実行結果】(その2)※赤字は実行時にキーボードから入力する内容
10 個の整数を入力してください:⏎ 1 2 3 4 5 6 7 8 9 10 どこからどこまで表示させますか:⏎ 0 3 a[0] = 1⏎ a[1] = 2⏎ a[2] = 3⏎ a[3] = 4⏎
- 【プログラムの実行結果】(その3)※赤字は実行時にキーボードから入力する内容
10 個の整数を入力してください:⏎ 1 2 3 4 5 6 7 8 9 10 どこからどこまで表示させますか:⏎ 3 3 a[3] = 4⏎
【過去にあったミス(実際に減点となり,やり直しを命じられた例)】
■ 実行の画面出力が上の例と違う(きちんと確認していない).
(例)表示される数字や添字が 1 つずつずれてしまっている.
■ main 関数を書き換えてしまっている.
■ インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).
ミスが無いことを確認したら次の問題へ → [ 問5 (ex0805.c) ]