![]()
1 #include<stdio.h>
2
3 int main()
4 {
5 int i,j,k;
6 int n,m; //n:用于记录图中的节点的数目;m:用于记录图中边的数目
7 int edge[1000][2]; //用于存储输入的图的(a,b)边
8
9 scanf("%d%d",&n,&m); //输入图的节点和边的数目
10
11 for(i=0;i<m;i++) //输入图中的边(a,b)
12 scanf("%d%d",&edge[i][0],&edge[i][1]);
13
14 for(i=1;i<=n;i++) //循环输出关联矩阵的 n 行
15 {
16 for(j=0;j<m;j++) //循环输出关联矩阵的 m 列
17 if(edge[j][0]==i) //如果 i 节点与 j 边相连,并且 j 边从 i 节点输出
18 printf("%d ",1); //输出 1
19 else if(edge[j][1]==i) //如果 i 节点与 j 边相连,并且 j 边从 i 节点输入
20 printf("%d ",-1); //输出 -1
21 else
22 printf("%d ",0); //如果 i 节点与 j 边不相连,输出 0
23 printf("\n");
24 }
25
26 return 0;
27 }