计算有向图点的入度和出度 c语言
时间: 2024-02-15 19:04:04 浏览: 98
图的入度和出度(C语言代码)
以下是一个简单的用C语言计算有向图点的入度和出度的程序:
```c
#include <stdio.h>
#define MAX_VERTICES 100
int main() {
int n, m; // n是点的个数,m是边的个数
int indegree[MAX_VERTICES] = {0}; // 存储每个点的入度
int outdegree[MAX_VERTICES] = {0}; // 存储每个点的出度
printf("请输入点的个数和边的个数:\n");
scanf("%d %d", &n, &m);
printf("请输入每条边的起点和终点:\n");
for (int i = 0; i < m; i++) {
int u, v;
scanf("%d %d", &u, &v);
outdegree[u]++;
indegree[v]++;
}
printf("点的入度和出度分别为:\n");
for (int i = 0; i < n; i++) {
printf("点 %d: 入度 %d, 出度 %d\n", i, indegree[i], outdegree[i]);
}
return 0;
}
```
程序简单地通过 `indegree` 和 `outdegree` 数组分别记录每个点的入度和出度。在输入每条边的起点和终点时,我们分别将起点的出度加1,将终点的入度加1。最后输出每个点的入度和出度即可。
阅读全文