- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
路径设计问题
计算机程序设计训练
说明书
学号 0705010328
姓名 贾树林
指导教师 杨树恒
计算机程序训练设计报告目的:
是学习完《程序设计》课程后进行的一次全面的综合性上机实验。其目的在于为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。
内容和要求:
用C作为工具制作一个小型系统(具体内容详见附件上的题目)。所设计的系统应包含输入输出、查询等基本功能。根据课程设计1周时间的安排选择适当大小的设计课题,根据题目的基本需求,画出流程图,编写程序,并写出详细的设计说明书。最后上机调试通过,并进行验收,交上机报告和程序的原代码。
三,系统设计说明:
(一)系统功能分析:系统用到的数据类型程序设计一般由两部分组成:算法和数据结构,合理地选择和实现一个数据结构和处理这些数据结构具有同样的重要性
A B C D E F G H A 0 1 1 1 0 1 0 0 B 1 0 0 0 0 1 0 0 C 1 0 0 1 1 0 0 0 D 1 0 1 0 0 0 1 0 E 0 0 1 0 0 0 1 1 F 1 1 0 0 0 0 0 1 G 0 0 0 1 1 0 0 1 H 0 0 0 0 1 1 1 0 表2
具体过程如下:
①将城市A(编号1)入队,队首指针qh置为0,队尾指针qe置为1。
②将队首指针所指城市的所有可直通的城市入队,当然如果这个城市在队中出现过就不入队,然后将队首指针加1,得到新的队首城市。重复以上步骤,直到城市H入队为止。当搜索到城市H时,搜索结束。
③输出经过最少城市的线路。数据结构设计:考虑到算法的可读性,用线性数组a作为活结点队的存储空间。为了方便输出路径,队列的每个结点有两个成员:a[i].city记录入队的城市;a[i].pre记录该城市的前趋城市在队列中的下标,这样通过a[i].pre就可以倒推出最短线路。也就是说,活结点队同时又是记录所求路径的空间。因此,数组队并不能做成循环队列,所谓“出队”只是队首指针向后移动,其空间中存储的内容并不能被覆盖。和广度优先算法框架一样,设置数组visited[]记录已搜索过的城市。
数据主要包括如下:
#include graphics.h
#include stdlib.h
#include stdio.h
#include conio.h
#define AA 36
#define BB 24
const int midx = 319, midy = 239;
typedef struct chengshi
{
int x;
int y;
} ch;
ch sy = {-270, 0}, sjz = {-180, 100};
ch tj = {-100, 0}, bj = {-100, -150};
ch sh = {20, 100}, jn = {100, 0};
ch zz = {100, -100}, gz = {270, 0};
void turn(int *a, int *b, int c);
void dline(ch a, int i1, ch b, int i2);
void wrt(ch a, char* s1, char* s2);
void fill(ch a);
2.main()主函数
程序采用分段设计,分段输出路线图的各部分。主函数内嵌入draw函数,在主函数中调用此函数用来输出图形。
3.setcolor()
将当前绘图颜色置为程序中颜色白、蓝、黄。
4.rectangle()
用当前线型直线,用程序中指定的颜色和宽度画一个矩形。
5.line()
用程序中指定的颜色和线条在指定的城市之间画线。
(二)系统包括的功能模块,模块功能描述,各模块间的层次结构(即相互调用关系)以及模块之间的信息交换问题。1.本程序是一个简单的。2.程序实现简单的如下功能:,,三)算法设计intjz[8][8]={{0,1,1,1,0,1,0,0},{1,0,0,0,0,1,0,0},{1,0,0,1,1,0,0,0},{1,0,1,0,0,0,1,0},
{0,0,1,0,0,0,1,1},{1,1,0,0,0,0,0,1},{0,0,0,1,1,0,0,1},
{0,0,0,0,1,1,1,0}};
struct{intcity,pre;}sq[100];
intqh,qe,i,visited[100];
main( )
{inti,n
文档评论(0)