首页 > AI文库 >

如何使用c语言编写一个程序输出以邻接表为存储结构的无向图的各顶点的度

来自 江西省南昌市 的网友分享 (°C) 37998

来自 江西省南昌市 的网友 分享

(°C)

要使用C语言编写一个程序输出以邻接表为存储结构的无向图的各顶点的度,首先需要定义一个结构体表示图的顶点,然后创建一个数组存储图的顶点。接着,遍历邻接表,计算每个顶点的度。最后,输出各顶点的度。

以下是具体的代码实现:

```c
#include <stdio.h>
#include <stdlib.h>

// 定义顶点结构体
typedef struct Vertex {
int data; // 顶点数据
struct Vertex *next; // 指向下一个顶点的指针
} Vertex;

// 计算顶点的度
int degree(Vertex *vertex) {
int count = 0;
Vertex *temp = vertex->next;
while (temp != NULL) {
count++;
temp = temp->next;
}
return count;
}

int main() {
// 创建图的顶点数组
Vertex vertices[5];

// 初始化顶点数据和邻接表
vertices[0].data = 0;
vertices[0].next = &vertices[1];
vertices[1].data = 1;
vertices[1].next = &vertices[2];
vertices[2].data = 2;
vertices[2].next = &vertices[3];
vertices[3].data = 3;
vertices[3].next = &vertices[4];
vertices[4].data = 4;
vertices[4].next = NULL;

// 输出各顶点的度
for (int i = 0; i < 5; i++) {
printf("顶点%d的度为:%d
", vertices[i].data, degree(&vertices[i]));
}

return 0;
}
```

这个程序首先定义了一个表示顶点的结构体`Vertex`,包含一个整数类型的数据成员`data`和一个指向下一个顶点的指针`next`。然后定义了一个计算顶点度的函数`degree`,通过遍历邻接表来计算顶点的度。在`main`函数中,创建了一个顶点数组`vertices`,并初始化了顶点数据和邻接表。最后,遍历顶点数组,输出各顶点的度。

相关推荐

中国经济实现高质量发展具备哪些显著优势论文1500字

AI文库

世界变乱交织,中国笃行担当 变革动荡 大国关系 中国智慧 上述内容分别为大标题和三个小标题,请以此写出不少于2000字的形式与政策论文,要求内容充实具体,不存在抄袭、、雷同情况

AI文库

假如你是形式与政策这个课程的一名学生,请以“世界变乱多织,中国笃行担当”为主题,写一篇论文,要求完全按照论文的格式,字数一定在2500字以上!

AI文库

请结合《走好新时代科技自立自强之路》专题和今年2月8日广东省高质量发展大会聚焦产业科技话创新、谋未来主题,谈谈你对党的二十大提出的“科技强国”战略的认识及行动

AI文库

国家安全为什么与你我息息相关论文不少于1500

AI文库

热门图文

上一篇:作为新时代大学生,如何积极投身中华民族共同建设

下一篇:请结合校训明德敏行技高志远和自身虚拟现实技术应用专业,谈谈你对未来职业道路发展的看法。字数1000字以上