#include
#include
#include
#define max 10
struct enode
{
int adjvex;
struct enode next;
};
struct vnode
{
int vertex;
struct enode *fadj;
};
typedef struct
{
struct vnode gv[max];
int n,e;
}rgraph;
void create_gr()/图的建立与输出*/
{
rgraph gr;
int i,j,k;
struct enode *ptr;
printf("enter n and e:\n");
scanf("%d,%d",&gr->n,&gr->e);
for(i=1;i<=gr->n;i++)
{
gr->gv[i].vertex=i;
gr->gv[i].fadj=NULL;
}
for(k=1;k<=gr->e;k++)
{
printf("enter edges:\n");
scanf("%d,%d",&i,&j);
ptr=(struct enode)malloc(sizeof(enode));
ptr->adjvex=j;
ptr->next=gr->gv[i].fadj;
gr->gv[i].fadj=ptr;
}
for(i=1;i<=gr->n;i++)
{
printf("%d:",gr->gv[i].vertex);
for(j=1;j<=gr->e;j++)
{
ptr=gr->gv[i].fadj;
gr->gv[i].fadj=ptr->next;
printf("%d",ptr->adjvex);
}
}
}
int main()
{
create_gr();
return 0;
}