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