📄 7_1.txt
字号:
#include<stdio.h>
typedef struct f{
char ch[10];
}chararray;
locate(chararray *vetex,int n,char *s)
{
int i;
for(i=0;i<n;i++)
if(strcmp(vetex[i].ch,s)==0)return i;
return -1;
}
main()
{
int *adj,n,e,i,j,k; chararray *vetex;char *s,*t;
printf("输入无向图的顶点数和边数.\n");
do
scanf("%d%d",&n,&e);
while(n<=0 || e<=0);
getchar();
adj=(int *)malloc(sizeof(int)*n*n);
vetex=(chararray *)malloc(sizeof(chararray)*n);
printf("输入各顶点的字符串.\n");
for(i=0;i<n;i++)
{
gets(s);
strcpy(vetex[i].ch,s);
}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
*(adj+i*n+j)=0;
printf("请输入各条边.\n"); /*如v1回车v2回车表明有v1到v2的边*/
for(i=1;i<=e;i++)
{
gets(s);
gets(t);
j=locate(vetex,n,s);
k=locate(vetex,n,t);
if(k>=0 && j>=0){
*(adj+j*n+k)=1;
*(adj+k*n+j)=1;
}
else
printf("边的顶点输入不正确!\n");
}
for(i=0;i<n;i++)
{ for(j=0;j<n;j++)
printf("%d",*(adj+i*n+j));
printf("\n");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -