• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:2次元配列を使ったC言語の九九表を作りたいんですが、方法がわかりません。)

C言語の九九表の作り方

このQ&Aのポイント
  • C言語で九九表を作成する方法を教えてください。
  • 2次元配列を使わずに九九表を作ることはできますが、2次配列を使って作りたいです。
  • 現在、九九表を作るために2次配列を使ってコードを組んでいますが、エラーが出てしまいます。どうすれば解決できるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • R_Earl
  • ベストアンサー率55% (473/849)
回答No.1

> 色々調べたり、少しずつ変えながら試しているのですが、できません。 調べる前に、まずプログラムを読む練習をした方がいいと思います。 C言語プログラムの入門書(入門サイトでも良いです)に掲載されているプログラムを読んでください。 その後、そのプログラムを一行ずつ頭の中で実行してみてください (あるいは、どんな処理がどんな順番で実行されるのかを、メモをとりながら追ってみてください)。 こういった練習を積まないと、自身の書いたプログラムの不具合に気づきませんし、 正しいプログラムの書き方も身につかないと思います。 例えば、以下のプログラムを実行すると何が起こるでしょうか。 頭の中でこのプログラムを実行してみてください (あるいはどんな処理がどんな順番でなされるのかを、メモをとりながら追ってみてください)。 /*************************************/ #include<stdio.h> int main(void){  int i, j;  int sum;  for(i = 0; i < 5; i++){   for(j = 0; j < 5; j++){    sum = i + j;    printf("%d, ", sum);   }   printf("\n");  }    return(0); } /*************************************/ ちなみに、上のプログラムはインデントに全角空白文字を使用しているので、 そのままコンパイルすることはできません。 もう二つ例をあげておきます。 これらも頭の中で実行(あるいはメモをとって動作を追跡)してみてください。 まず1つ目です。 このプログラムを実行すると、画面にどんなものが表示されますか? /*************************************/ #include<stdio.h> int main(void){  int i, j;  for(i = 0; i < 5; i++){   for(j = i; j < 5; j++){    printf("★");   }   printf("\n");  }    return(0); } /*************************************/ 最後です。 /*************************************/ #include<stdio.h> int main(void){  int i, j;  int result[5][5];  for(i = 0; i < 5; i++){   for(j = 0; j < 5; j++){    result[i][j] = i + 5 * j;   }  }  printf("%d\n", result[0][2]);  printf("%d\n", result[2][3]);  printf("%d\n", result[4][1]);    return(0); } /*************************************/ このプログラムの最後のprintfで何が表示されるのかが分かれば、 九九の方もできると思います。

momopu0303
質問者

お礼

エラーが解消されてうまく実行できました。 ありがとうございました。

関連するQ&A