Я создаю программу, которая манипулирует матрицей. Часть программы заключается в том, что мне нужно создать матрицу со случайными входами.
Однако после создания матрицы и печати каждого значения матрицы для двойной проверки правильности хранения рандомизированных чисел матрица, похоже, хранит только последнюю строку чисел, а затем дублируя его.
Вот скриншот, поясняющий, что я имею в виду:
Вы можете видеть, что он создает матрицу [[3,6] [7,5]] Но он показывает только болячки как [[7,5] [7,5]]
А вот мой код, который изолирует проблему:
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, j, m, n, row, col;
int sum = 0, row_i=0, col_i=0;
int matrix[m][n];
int row_m[m];
printf("Enter m\n");
scanf("%d", &m);
printf("Enter n\n");
scanf("%d", &n);
for(i = 0; i < m; i++){
for(j = 0; j < n; j++){
matrix[i][j] = rand()%10;
printf("%d ",matrix[i][j]);
}
printf("\n");
}
printf("%d\n", matrix[0][0]);
printf("%d\n", matrix[0][1]);
printf("%d\n", matrix[1][0]);
printf("%d\n", matrix[1][1]);
return 0;
}