課題 [5] for 文(6/9)

問 6(提出プログラム名:ex0506.c)

整数 n を読み込み, 1 以上 n 以下の各整数 i について,実行例と同じかたちで i2 と i2 個の # (半角のシャープ)を出力するプログラムを作りなさい.なお, プログラムでは必ず for 文を使うこととする.
n は 1 以上 9 以下であると仮定してプログラムを作ってよい.
提出するソースファイル(ソースプログラム)のファイル名は ex0506.c としなさい.

【注意】この問題では if 文を使ってはいけません

【ヒント】
行の位置を i,列の位置を j で表した for 文の二重ループを作るとよいです.
そして,上から i 行目では #i*i 個出力することになるので,i を使った for 文の中に
j を使った for 文を次のように書くとよいです:
 for ( j = 1; j <= i*i; j++ ){
  ...

なお,行末に i*i を表示することも忘れないようにしてください.

  • 【プログラムの実行結果】(その1)赤字は実行時にキーボードから入力する内容
    ※出力する記号 # を間違っていないか,行末に数字も書かれているか,# と数字がくっついてしまっていないかそれぞれ注意せよ.
n を入力してください:7
# 1
#### 4
######### 9
############### 16
########################## 25
#################################### 36
################################################# 49
  • 【プログラムの実行結果】(その2)赤字は実行時にキーボードから入力する内容
n を入力してください:2
# 1
#### 4
  • 【プログラムの実行結果】(その3)赤字は実行時にキーボードから入力する内容
n を入力してください:1
# 1

【過去にあったミス(実際に減点となり,やり直しを命じられた例)】
実行の画面出力が上の例と違うきちんと確認していない).
  (例1)表示に使っている記号が違っている.
  (例2)出力される記号の個数が違っている.
  (例3)行末に数値を表示し忘れている.
■ ヒントを見落としていて,無駄に複雑なプログラムになってしまっている.
インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).


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