📄 init.cpp
字号:
#include"traffic.h"
status Inite(ALGraph &G)
/*Inite the ALGraph from the file*/
{
int i,v1,v2,j;
ArcNode * p;
Tooltype *f;
FILE *fp;
if(!(fp = fopen("data","r")))
return ERROR;
fscanf(fp,"%d %d",&G.vexnum,&G.arcnum);
for(i = 0;i < G.vexnum;++i)
{
fscanf(fp,"%s",&G.vertices[i].data);
G.vertices[i].firstarc=NULL;
}
for(i = 0;i < G.arcnum;++ i)
{
fscanf(fp,"%d %d",&v1,&v2);
if(!(p=(ArcNode *)malloc(sizeof(ArcNode))))
return ERROR;
p -> Tool[0] = NULL;
p -> Tool[1] = NULL;
fscanf(fp,"%d",&j);
if(j > 0)
{
if(!(f=(Tooltype *)malloc(sizeof(Tooltype))))
return OVERFLOW;
f -> line = j;
fscanf(fp,"%d:%d",&f->drivetime.hour,&f->drivetime.minute);
fscanf(fp,"%d",&f->money);
for(j = 0;j < f -> line;j++)
fscanf(fp,"%d:%d",&f->starttime[j].hour,&f -> starttime[j].minute);
p -> Tool[0] = f;
}
fscanf(fp,"%d",&j);
if(j > 0)
{
if(!(f = (Tooltype *)malloc(sizeof(Tooltype))))
return OVERFLOW;
f->line = j;
fscanf(fp,"%d:%d",&f->drivetime.hour,&f->drivetime.minute);
fscanf(fp,"%d",&f -> money);
for(j = 0;j < f -> line;j++)
fscanf(fp,"%d:%d",&f -> starttime[j].hour,&f -> starttime[j].minute);
p -> Tool[1] = f;
}
if(p -> Tool[1]|| p->Tool[0])
{
p->adjvex = v2;
p->nextarc = G.vertices[v1].firstarc;
G.vertices[v1].firstarc = p;
}
}
fclose(fp);
return OK;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -