资源简介
交通图 C语言实现,简单的可以选择两地,筛选路程最短的交通图

代码片段和文件信息
#include “headGraph.h“
Status CreatNG(MGraph &GMGraph &G2FILE *fpALGraph &G1ALGraph &G3)
{//创建邻接矩阵,成功返回OK;否则,返回ERROR
int ijk;
int lengthhourcost;
char v1[MAX_VERTEX_NUM]v2[MAX_VERTEX_NUM]t1[6]t2[6]checi[10];
// printf(“请输入顶点数\n“);
fscanf(fp“%d“&G.vexnum);
// getchar();
// printf(“请输入边总数\n“);
fscanf(fp“%d“&G.arcnum);
// getchar();
if(G.vexnum<0||G.arcnum<=0)
{
printf(“顶点或边数目输入有误!\n“);
return ERROR;
}
// printf(“请输入顶点及关于顶点的相关信息\n“);
for(k=0;k {
fscanf(fp“%s“&G.vexs[k].name);
fscanf(fp“%s“&G.vexs[k].introduce);
}
for(i=0;i for(j=0;j {
G.arcs[i][j].cost=INFINITY;
G.arcs[i][j].length=INFINITY;
G.arcs[i][j].hour=INFINITY;
G.arcs[i][j].waitime=0;
strcpy(G.arcs[i][j].checi“ “);
strcpy(G.arcs[i][j].time1“ “);
strcpy(G.arcs[i][j].time2“ “);
}
//
for(k=0;k {
fscanf(fp“%d %d %d %s %s %s %s %s“& length& hour& cost& v1& v2& t1& checi&t2);
// getchar();
i=LocateVex(Gv1);
j=LocateVex(Gv2);
G.arcs[i][j].cost=cost;
G.arcs[i][j].length=length;
G.arcs[i][j].hour=hour;
strcpy(G.arcs[i][j].time1t1);
strcpy(G.arcs[i][j].checicheci);
strcpy(G.arcs[i][j].time2t2);
}
///
int mi1j1w;
char t[MAX_VERTEX_NUM]h[MAX_VERTEX_NUM];
ArcNode *p*q*temp;
fscanf(fp“%d“&G1.vexnum);
// getchar();
fscanf(fp“%d“&G1.arcnum);
// getchar();
for(m=0;m {
fscanf(fp“%s“G1.vertices[m].data);
G1.vertices[m].firstarc=NULL;
}
for(m=0;m {
fscanf(fp“%d %s %s“&w&t&h);
// getchar();
i1=LocateVex2(G1t);
j1=LocateVex2(G1h);
p=(ArcNode *)malloc(sizeof(ArcNode));
p->adjvex=j1;
p->nextarc=NULL;
p->info=w;
temp=(ArcNode *)malloc(sizeof(ArcNode));
temp->adjvex=i1;
temp->nextarc=NULL;
temp->info=w;//ij and ji is the same
//------------
if(!G1.vertices[i1].firstarc)
G1.vertices[i1].firstarc=p;
else
{
for(q=G1.vertices[i1].firstarc;q->nextarc;q=q->nextarc);
q->nextarc=p;
}
//-------------------
if(!G1.vertices[j1].firstarc)
G1.vertices[j1].firstarc=temp;
else
{
for(q=G1.vertices[j1].firstarc;q->nextarc;q=q->nextarc);
q->nextarc=temp;
}
}
//////////
int i2j2k2;
int length2hour2cost2;
char v12[MAX_VERTEX_NUM]v22[MAX_VERTEX_NUM]t12[6]t22[6]checi2[10];
// printf(“请输入顶点数\n“);
fscanf(fp“%d“&G2.vexnum);
// getchar();
// printf(“请输入边总数\n“);
fscanf(fp“%d“&G2.arcnum);
// getchar();
if(G2.vexnum<0||G2.arcnum<=0)
{
printf(“顶点或边数目输入有误!\n“);
return ERROR;
}
// printf(“请输入顶点及关于顶点的相关信息\n“);
for(k2=0;k2 {
fscanf(fp“%s“&G2.vexs[k2].name);
fscanf(fp“%s“&G2.vexs[k2].introduce);
}
for(i2=0;i2 for(j2=0;j2 {
G2.arcs[i2][j2].cost=INFINITY;
G2.arcs[i2][j2].length=INFINITY;
G2.arcs[i2][j2].hour=IN
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2010-03-13 08:06 交通图\
文件 6881 2009-01-02 18:27 交通图\1.txt
文件 1017 2009-01-02 19:25 交通图\2.txt
文件 5073 2009-01-01 17:30 交通图\creat.cpp
文件 2776 2009-01-02 13:53 交通图\headGraph.h
文件 249 2009-01-01 00:44 交通图\headmain.h
文件 90 2009-01-01 00:44 交通图\head_main.h
文件 57 2009-01-02 17:57 交通图\main.cpp
文件 1017 2009-01-02 19:25 交通图\t.txt
文件 6881 2009-01-02 18:27 交通图\test.txt
文件 2904 2009-01-02 20:30 交通图\User.cpp
文件 123392 2009-01-02 20:40 交通图\USTC----0711 交通图.ppt
文件 3064 2009-01-02 11:25 交通图\删除城市.cpp
文件 6034 2009-01-02 15:35 交通图\打印.cpp
文件 2251 2009-01-02 20:30 交通图\最短.cpp
文件 1168 2009-01-02 14:37 交通图\欢迎.cpp
文件 9150 2009-01-07 00:10 交通图\管理员.cpp
文件 2006 2010-03-13 08:05 交通图\重写文件.cpp
相关资源
- C++头文件转delphi工具 + 源码
- C语言编程常见问题解答.pdf
- GD32通过规则组寄存器 DMA获取多组AD
- 基于MFC的TCP调试助手源码95706
- 国际象棋的qt源代码
- 操作系统c语言模拟文件管理系统844
- C语言开发实战宝典
- C++中头文件与源文件的作用详解
- 基于mfc的多线程文件传输
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- C语言代码高亮html输出工具
- 猜数字游戏 c语言代码
- C语言课程设计
- 数字电位器C语言程序
- CCS FFT c语言算法
- 使用C语言编写的病房管理系统
- 通信过程中的RS编译码程序(c语言)
- 利用C++哈希表的方法实现电话号码查
- 计算机二级C语言上机填空,改错,编
- 用回溯法解决八皇后问题C语言实现
- 移木块游戏,可以自编自玩,vc6.0编写
- 简易教务管理系统c语言开发文档
- 操作系统课设 读写者问题 c语言实现
- 小波变换算法 c语言版
- C流程图生成器,用C语言代码 生成C语
- 3des加密算法C语言实现
- 简单的C语言点对点聊天程序
- 单片机c语言源程序(51定时器 八个按
- C++纯文字DOS超小RPG游戏
评论
共有 条评论