I tried to code a program in which the users can input a number of rows and columns in 2D matrix. It compiles without any errors but when I run the program, it does not work. After I input the number of rows, the program suddenly exits.
#include <cstdio>
typedef double** DMatrix;
DMatrix Matrix(int row, int col) {
DMatrix x = new double* [row];
for (int r=0; r<row; r++){
x[r] = new double[col];
}
return x;
}
void Delete(DMatrix x, int row){
for (int r=0; r<row; r++){
delete[] x[r];
}
delete[] x;
}
int main (){
int row , col;
printf("Enter number of row : "); scanf("%d", row);
printf("Enter number of column : "); scanf("%d", col);
DMatrix A = Matrix(row, col);
for (int i=0; i<row; i++){
for (int j=0; j<col; j++){
printf("Enter number in element %d%d :", i, j);
scanf("%d\n", A[i][j]);
}
}
for (int r=0; r<row; r++){
for (int c=0; c<col; c++){
printf("%lf\t", A[r][c]);
}
printf("\n");
}
Delete(A, row);
return 0;
}