qcode
  • 创作工场专业版,一问多答!更智能、更完整、更原创
  • 这是一个超强内容创作平台,它会写文章、做设计、绘图、敲代码,有问必答!
🔥点击使用-免登录深度版🔥

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

时间2024-05-20 18:04:15 提问来自 江西省南昌市 的网友 分类创作 浏览272
要使用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`,并初始化了顶点数据和邻接表。最后,遍历顶点数组,输出各顶点的度。

不满意?免费深度重写!

免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。

上一篇 请结合校训“明德敏行 技高志远”和虚拟现实技术应用专业,谈谈你对未来职业道路发展的看法。字数1000字以上。 下一篇 国内江苏佳禾输送设备科技有限公司怎么样?