问题描述
- 运行出现的错误不知道怎么修改,求答案
-
#include
#define Vmas 15
typedef char VType;
typedef int EType;
typedef struct{
VType vexs[Vmax];
EType edges[Vmax][Vmax];
int Vnum, Enum;
}MGRAPH;MGRAPH CREATMG(MGRAPH G){
int i,j;
char vi,vj;
printf("please intput the elemnts of vexs: n");
for(i=0;(G.vexs[i]=getchar())!='#'&&i<Vmax;i++);
G.Vnum=i;
for(i=0;i<G.Vnum;i++)
for(j=0;j<G.Vnum;j++)
G.edges[i][j]=0;
G.Enum=0;
fflush(stdin);
printf("please input the %d arc such as ab:",G.Enum+1);
scanf("%c%c",&vi,&vj);
fflush(stdin);
while(vi!='#'&&vj!='#'&&G.Enum<G.Vnum*(G.Vnum)-1){
if(vi==vj)
printf("input errorn");
else{
i=LOC(G.vexs.vi);
j=LOC(G.vexs.vj);
if(i==1 || j==-1)
printf("no vexsn");
else
if(G.edges[i][j]==1)
printf("input repetitionousn");
else{
G.edges[i][j]=1;
G.edges[i][j]=1;
G.Enum++;
}
printf("please input the *d arc :",G.Enum+1);
scanf("%c%c",&vi,&vj);
fflush(stdin);
}
return(G);
}
void SHOWMGRAPH(MGRAPH(G))
{
int i,j;
printf(" ");
for(i=0;i<G.Vnum;i++)
printf("%c ",G.vexs[i]);
printf("n");
for(i=0;i<G.Vnum;i++)
{
printf("%c ",G.vexs[i]);
for(j=0;j<G.Vnum;j++)
printf("%d ",G.edges[i][j]);
printf("n");
}}
int LOC(char vexs[Vmax],char v)
{
int i;
for(i=0;vexs[i]!=v;i++)
if(i<strlen(vexs))return i;
else return -1;}
void main()
{
MGRAPH G1;
printf("GreatGraphics start; n");
G1=CREATMG(G1);
printf("GreatGraphics success! n");
SHOWMGRAPH(G1);
}}
解决方案
将程序贴在codepad.org这个网站上,然后将链接发出来。
codepad.org也提供了错误提示功能,编译错误它直接就能回答你。
不要直接贴在这里,csdn有bug,会丢失源代码的字符,这样没法帮你调试。
解决方案二:
设置断点,单步跟踪调试,查看具体错误变量等
解决方案三:
你第一行 #include 就报错了!后面怎么都不跟头文件名称?