課題 [8] 関数(2/9)

問 2(提出プログラム名:ex0802a.c)

このプログラム(ex0802a.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 上でインデントを自動で揃える作業をやっていない).


ミスが無いことを確認したら次の問題へ → [ 問3 (ex0803a.c) ]