fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(){
  5. int i,j,k;
  6. int a,b;
  7. int **mat;
  8.  
  9. scanf("%d %d",&a,&b);
  10.  
  11. // ここで2次元配列の動的確保をする
  12. mat = (int **)malloc(sizeof(int *) * a);
  13. for(i=0;i<a;i++){
  14. mat[i] = (int *)malloc(sizeof(int) * b);
  15. }
  16. // ここで2次元配列に数値を代入する
  17. k = 1;
  18. for(i=0;i<a;i++){
  19. for(j=0;j<b;j++){
  20. mat[i][j] = k;
  21. k++;
  22. }
  23. }
  24. // 以下の部分は表示の部分です
  25. // いじらなくてOK
  26. for(i=0;i<a;i++){
  27. for(j=0;j<b;j++){
  28. printf("%d ",mat[i][j]);
  29. }
  30. printf("\n");
  31. }
  32. // 最後にメモリを解放する
  33. for(i=0;i<a;i++){
  34. free(mat[i]);
  35. }
  36. free(mat);
  37.  
  38. return 0;
  39. }
Success #stdin #stdout 0s 5336KB
stdin
2 3
stdout
1 2 3 
4 5 6