fork(3) 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. if (mat == NULL) {
  15. printf("メモリの割り当てに失敗しました。\n");
  16. exit(1);
  17. }
  18. for (i = 0; i < a; i++) {
  19. mat[i] = (int *)malloc(b * sizeof(int));
  20. if (mat[i] == NULL) {
  21. printf("メモリの割り当てに失敗しました。\n");
  22. exit(1);
  23. }
  24. }
  25.  
  26.  
  27. //ここで2次元配列に数値を代入する
  28. int num = 1;
  29. for (i = 0; i < a; i++) {
  30. for (j = 0; j < b; j++) {
  31. mat[i][j] = num++;
  32. }
  33. }
  34. //以下の部分は表示の部分です
  35. //いじらなくてOK
  36. for(i=0;i<a;i++){
  37. for(j=0;j<b;j++){
  38. printf("%d ",mat[i][j]);
  39. }
  40. printf("\n");
  41. }
  42.  
  43. //さて,最後に忘れずにすることと言えば?
  44.  
  45. for (i = 0; i < a; i++) {
  46. free(mat[i]);
  47. }
  48. free(mat);
  49. return 0;
  50. }
  51.  
Success #stdin #stdout 0.01s 5280KB
stdin
2 3
stdout
1 2 3 
4 5 6