用c语言代码建立邻接矩阵
时间: 2023-10-22 20:06:01 浏览: 145
下面是用 C 语言代码建立邻接矩阵的示例:
```c
#include <stdio.h>
#define MAX_SIZE 100 // 定义邻接矩阵的最大大小
int main() {
int n; // 定义顶点数
int e; // 定义边数
int matrix[MAX_SIZE][MAX_SIZE]; // 定义邻接矩阵
printf("请输入顶点数:");
scanf("%d", &n);
printf("请输入边数:");
scanf("%d", &e);
// 初始化邻接矩阵
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
matrix[i][j] = 0;
}
}
// 输入每条边的信息
for (int i = 0; i < e; i++) {
int from, to;
printf("请输入第%d条边的起点和终点:", i + 1);
scanf("%d%d", &from, &to);
matrix[from][to] = 1; // 有向图
// matrix[from][to] = matrix[to][from] = 1; // 无向图
}
// 输出邻接矩阵
printf("邻接矩阵为:\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
```
示例中,我们首先输入顶点数和边数,然后通过一个二重循环来初始化邻接矩阵。接着,我们输入每条边的信息,并将邻接矩阵对应位置置为 1。最后,我们输出邻接矩阵。需要注意的是,如果是无向图,我们需要将邻接矩阵的对称位置也置为 1。
阅读全文