C语言生成随机对称矩阵
时间: 2024-08-12 19:07:34 浏览: 82
在C语言中,生成一个随机对称矩阵可以通过以下步骤实现。我们将使用二维数组来表示矩阵,并利用循环和随机数生成器来构造对称部分。这里是一个简单的示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define ROWS 5 // 可根据需求调整矩阵的行数
#define COLS 5 // 可根据需求调整矩阵的列数
void generateSymmetricMatrix(int matrix[ROWS][COLS]) {
int i, j;
srand(time(0)); // 设置随机种子
for (i = 0; i < ROWS; i++) {
for (j = 0; j <= i; j++) { // 对称部分
matrix[i][j] = rand() % 100 + 1; // 生成0-100之间的随机数,可以根据需要修改范围
matrix[j][i] = matrix[i][j]; // 由于是对称矩阵,设置左下角元素等于右上角元素
}
}
// 打印矩阵
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
}
int main() {
int symmetric_matrix[ROWS][COLS];
generateSymmetricMatrix(symmetric_matrix);
return 0;
}
```
运行这个程序会生成一个大小为`ROWS`x`COLS`的随机对称矩阵。每次运行时,由于种子随机化,生成的矩阵都是不同的。
阅读全文