#include<stdio.h> #include<string.h> #define MAX 200 int main() { int Vexs,Edges;//顶点和边数 int m,n; int p,q;//弧尾p,弧头q int id,od; int Edge[MAX][MAX]; int A[MAX][MAX]; while(1) { memset(Edge,0,sizeof(Edge)); scanf("%d %d",&Vexs,&Edges); if(Vexs==0&&Edges==0) break; for(m=0;m<Edges;m++) { scanf("%d%d",&p,&q); Edge[p-1][q-1]=1; } for(m=0;m<Vexs;m++) { od=0; for(n=0;n<Vexs;n++) { od+=Edge[m][n]; } if(m==0) printf("%d",od); else printf(" %d",od); } printf("\n"); for(m=0;m<Vexs;m++) { id=0; for(n=0;n<Vexs;n++) id+=Edge[n][m]; if(m==0) printf("%d",id); else printf(" %d",id); } printf("\n"); }//The so easy programme cost me 1.5h,I am dull }
原文:http://blog.csdn.net/yuzibode/article/details/18359607