对城市交通网的操作,添加城市名称一直有误,希望帮忙看看错在哪里
void Add(MGraph *G)
{
int i,j;
NData vi;
strcpy(G->vexs[G->n],vi);
G->n++;
printf("添加后共有%d个城市,%d条路线\n",G->n,G->e);
for(i=0;i<G->n;i++)
{
printf("%-5s",G->vexs[i]);
}
printf("%5s",G->vexs[i]);
printf("\n");
for(i=0;i<G->n;i++)
{
G->edges[i][G->n-1]=max;
G->edges[G->n-1][i]=max;
}
for(i=0;i<G->n;i++)
for(j=i;j<G->n;j++)
if(G->edges[i][j]!=max)
printf("%-10s%5s%10d\n",G->vexs[i],G->vexs[j],G->edges[i][j]);
printf("交通图的邻接矩阵为:\n");
for(i=0;i<G->n;i++)
{
for(j=0;j<G->n;j++)
printf("%-6d",G->edges[i][j]);
printf("\n");
}
}
void AddCity(MGraph *G)
{
int i,j;
NData vi;
printf("请输入您要添加的城市:");
scanf("%s",&vi);
for(i=0;i<G->n;i++)
{
if(strcmp(vi,G->vexs[i])==0)
{
printf("您要添加的城市已存在,无法添加\n");
break;
}
}
if(i==G->n)
Add(G);
}
如果程序运行结果是对的,广州的后面应该是长沙