c语言编程怎么输入矩阵

时间:2025-01-26 17:57:20 网络游戏

在C语言中输入一个矩阵,通常有以下几种方法:

使用二维数组

首先,定义一个二维数组来存储矩阵的元素。

然后,使用嵌套循环逐行逐列地读取用户输入的数据。

```c

include

int main() {

int row, col;

printf("请输入矩阵的行数: ");

scanf("%d", &row);

printf("请输入矩阵的列数: ");

scanf("%d", &col);

int matrix[row][col];

for (int i = 0; i < row; i++) {

for (int j = 0; j < col; j++) {

printf("请输入矩阵元素(行数%d,列数%d): ", i + 1, j + 1);

scanf("%d", &matrix[i][j]);

}

}

// 打印矩阵

for (int i = 0; i < row; i++) {

for (int j = 0; j < col; j++) {

printf("%d ", matrix[i][j]);

}

printf("

");

}

return 0;

}

```

使用动态内存分配

动态分配内存来存储矩阵的行和列。

使用嵌套循环逐行逐列地读取用户输入的数据。

```c

include

include

int main() {

int rows, cols;

printf("请输入矩阵的行数和列数: ");

scanf("%d %d", &rows, &cols);

int matrix = (int )malloc(rows * sizeof(int *));

for (int i = 0; i < rows; i++) {

matrix[i] = (int *)malloc(cols * sizeof(int));

}

printf("请输入矩阵的元素: ");

for (int i = 0; i < rows; i++) {

for (int j = 0; j < cols; j++) {

scanf("%d", &matrix[i][j]);

}

}

// 打印矩阵

for (int i = 0; i < rows; i++) {

for (int j = 0; j < cols; j++) {

printf("%d ", matrix[i][j]);

}

printf("

");

}

// 释放内存

for (int i = 0; i < rows; i++) {

free(matrix[i]);

}

free(matrix);

return 0;

}

```

使用结构体

定义一个结构体来表示矩阵,包含行数、列数和数据指针。

使用动态内存分配来存储矩阵的数据。