交通咨询系统 C语言实现 EasyX图形库

一、设计目的

软件算法综合设计是理论教学的深化和补充,具有较强的实践性,是电气信息类各专业的一门重要的实践环节必修课,涵盖《程序设计基础》、《离散结构》、《面向对象程序设计》、《算法与数据结构》等课程知识。为了帮助学生更好地学习,理解和掌握算法设计所需的技术,为整个专业学习打好基础,要求运用所学知识,上机解决些典型问题, 通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握所用到的些技术。本综合设计着眼于原理与应用的结合点,使学生学会如何把书上学到的知识用于解决实际问题,培养软件工作所需要的动手能力。设计还能使书上的知识变“活”,达到深化理解和灵活掌握教学内容的目的。平时的练习较偏重于如何编写功能单一的“小”算法,而综合设计是软件设计的综合训练,包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧,多人合作,以至一整套软件工作规范的训练和科学作风的培养。

二、设计内容

设计一个交通咨询系统,能让旅客咨询从一个城市顶点到另一个城市顶点之间的最短路径或最低花费或最少时间问题。对于不同咨询要求,可输入城市间的路程或所需时间或所需费用。

三、设计任务和要求

1.设计任务

①巩固和加深学生对课程理论知识的理解,提高综合运用书上学到的知识解决实际问题的能力。

②培养学生选用参考书,查阅手册及文献资料的能力。

③使学生能够按要求编写课程设计报告书,正确阐述设计和设计结果、正确绘制程序框图。

2.设计要求

(1)建立有向图存储结构,采用邻接矩阵的形式构造有向图,函数名为:CreateMGraph(MGraph G,int n,int e);

(2)迪杰斯特拉算法求一个顶点到其余顶点的最短路径,函数名为:Dijkstra(MGraph G,int v1,int n);

(3)弗洛伊德算法求每两个顶点之间的最短路径,函数名为:Floyd(MGraph G,int n);

(4)系统主程序调用。

四、可选器材

Visual Studio 2019 、EasyX图形库

五.参考资料

[1]李春葆.数据结构(C语言版)习题与解析[M].北京:清华大学出版社,2009.

[2]严蔚敏 吴伟民.数据结构(C语言版) [M].北京:清华大学出版社,2007.

部分代码如下:

#include<stdio.h>#include<graphics.h>#include <cstdlib>#include<tchar.h>#define MVNum 100#define Maxint 32767//需要加载的图片IMAGE welcome1;IMAGE w_button;IMAGE menu;IMAGE city_code;IMAGE dijkstra;IMAGE floyd;//图的定义typedef int Adjmatrix;typedef struct {const wchar_t* vexs[MVNum];Adjmatrix arcs[MVNum][MVNum];}MGraph;//全局变量float price=0.45;const wchar_t* info[] = { _T("哈尔滨"),_T("长春"),_T("沈阳"),_T("呼和浩特"),_T("北京"), _T("天津"),_T("石家庄"), _T("济南"), _T("太原"),_T("西安"),_T("兰州"),_T("乌鲁木齐"),_T("西宁"),_T("拉萨"),_T("成都"),_T("郑州"),_T("南京"),_T("合肥"),_T("武汉"),_T("重庆"),_T("贵阳"),_T("长沙"),_T("南昌"),_T("上海"),_T("杭州"),_T("福州"),_T("昆明"),_T("南宁"),_T("广州"),_T("海口") };//各顶点名称//函数声明void Welcome();void CreateMGraph(MGraph* G, int n, int e);void Dijkstra(MGraph G, int n);void Floyd(MGraph G, int n);void Dispath(MGraph G, int D[][MVNum], int P[][MVNum], int n);void Select_MainMenu();

界面展示如下:

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ2OTQzODY3,size_16,color_FFFFFF,t_70

每个模块的功能完整,需要源码可前往:交通咨询系统C语言EasyX图形库-C/C++文档类资源-CSDN下载 

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是不是应该好好学习呢?

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值