c语言用邻接矩阵的存储下图,并输出邻接矩阵
时间: 2023-12-21 21:30:01 浏览: 99
为了用邻接矩阵存储下图,我们需要先确定图的顶点数和边数,然后创建一个二维数组来表示邻接矩阵。假设下图有5个顶点和7条边,邻接矩阵可以这样表示:
```c
#define MAXVEX 5
#define MAXEDGE 7
int matrix[MAXVEX][MAXVEX] = {
{0, 1, 1, 0, 1},
{1, 0, 1, 1, 1},
{1, 1, 0, 1, 0},
{0, 1, 1, 0, 1},
{1, 1, 0, 1, 0}
};
```
其中,matrix[i][j]表示顶点i和顶点j之间是否有边相连,1表示有,0表示没有。由于这是一个无向图,所以邻接矩阵是对称的。
完整代码如下:
```c
#include <stdio.h>
#define MAXVEX 5
#define MAXEDGE 7
int main() {
int matrix[MAXVEX][MAXVEX] = {
{0, 1, 1, 0, 1},
{1, 0, 1, 1, 1},
{1, 1, 0, 1, 0},
{0, 1, 1, 0, 1},
{1, 1, 0, 1, 0}
};
int i, j;
for (i = 0; i < MAXVEX; i++) {
for (j = 0; j < MAXVEX; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
```
输出结果为:
```
0 1 1 0 1
1 0 1 1 1
1 1 0 1 0
0 1 1 0 1
1 1 0 1 0
```
阅读全文