首页 > 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文库

科学管理之父泰勒在美国国会听证会上讲话的主要内容

AI文库

请用 1、6、6、8四个数字算24点

AI文库

热门图文

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

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