fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. //必要があれば変数などを追加してもOKです
  5.  
  6. int main(){
  7. int i,j,k;
  8. int a,b;
  9. int **mat;
  10. scanf("%d %d",&a,&b);
  11.  
  12. //ここで2次元配列の動的確保をする
  13. mat = (int**)malloc(a* sizeof(int*));
  14. for (int i = 0; i < a; i++) {
  15. mat[i] = (int*)malloc(b * sizeof(int));
  16. }
  17.  
  18.  
  19.  
  20. //ここで2次元配列に数値を代入する
  21. k=1;
  22. for(i=0;i<a;i++){
  23. for(j=0;j<b;j++){
  24. mat[i][j]=k++;
  25. }
  26. }
  27. //以下の部分は表示の部分です
  28. //いじらなくてOK
  29. for(i=0;i<a;i++){
  30. for(j=0;j<b;j++){
  31. printf("%d ",mat[i][j]);
  32. }
  33. printf("\n");
  34. }
  35.  
  36. //さて,最後に忘れずにすることと言えば?
  37. for (int i = 0; i < a; i++) {
  38. free(mat[i]); // 各行のメモリを解放
  39. }
  40. free(mat); // 行ポインタのメモリを解放
  41.  
  42.  
  43. return 0;
  44. }
  45.  
Success #stdin #stdout 0.01s 5268KB
stdin
5
6

stdout
1 2 3 4 5 6 
7 8 9 10 11 12 
13 14 15 16 17 18 
19 20 21 22 23 24 
25 26 27 28 29 30