1、 计算机科学与技术系 课程设计报告 2011 2012 学年第二学期 课程课程 面向过程综合设计 课 程 设 计 名 称课 程 设 计 名 称 公交路线管理系统 学生姓名学生姓名 学号学号 专业班级专业班级 指导教师指导教师 2012 年 6 月 一、设计思想一、设计思想 我的系统主要功能是实现对公交路线的查询管理和维护。众所周知,公交车在每一个 城市中都有着非常大的作用,几乎每个市民都要用到公交车。以及公交车的路线经常会有 所改动。因此如果使用我的这个系统,就可以及时的对路线信息进行修改和保存可以很好 地满足市民的查询,方便人民的生活。而且该系统使用起来也很方便。用户只需根据显示 的提示信息
2、进行选择和输入就可以实现你要求的功能查询到你需要的信息。 本系统具有显示路线信息、添加线路信息、删除线路信息、修改线路信息、查询信息 的功能。 用户们可以根据自己所需要的情况进行相应的功能选择, 得到自己所需要的信息。 其具体功能简单描述如下: (1)显示路线信息:即将路线信息显示到屏幕中,供用户查看。该功能比较简单,在 这里不具体说明。 (2)添加路线信息:即添加一条新的公交路线或者是某一条路线上的站点。每次可 以添加一条路线信息,若用户想添加多条路线信息的话可以重复执行该功能,同样的,添 加站点的话也是每一次添加一个站点,若用户想添加多条路线信息的话也只需要重复执行 该功能即可。这样,就实
3、现了对公交路线的添加信息管理。 (3)删除路线信息:即能删除掉一条你所不需要的公交路线信息和某一条路线上的 站点。若要删除路线时只需要输入你要删除的公交路线号即可,若要删除站点也只需输入 你要删除的站点序号,不需要输入该站点名称。 (4)修改路线信息:即能修改一条你需要该的路线信息。修改内容包括:修改该条 公交路线号、修改站点名称(输入新的信息时该条路线的站点长度不能改变,若要改变站 点长促可以选择增加和删除功能,即可实现) 。 (5)查询路线信息:即能够查找出你要的公交路线信息和总共有多少站。简单地说, 就是用户先选择你要查询的公交路线号,在输入起点站和终点站名称,然后系统就会自动 显示出起
4、点站和终点站之间共有多少站点,以及起点站和终点站之间所有站点的序号和名 称,从而使用户一目了然的知道站点信息,而不需要像看地图那样一个站点一个站点的用 肉眼进行查找,这就为用户节省了很多时间。 (6)保存信息:即将信息存入指定文件中。当用户对原始数据进行相关的改动(主 要是对路线信息进行增加、删除、修改)之后,用户可以根据自己的选择判断是否要保存 到文件中,这样就实现了信息的记录功能,以方便用户随时进行查看。 二、二、 设计表示设计表示 1、程序的设计方法: 我的系统的设计流程还是比较简单,原始数据全部都被保存在 busline.txt 文件中, 用户就不必自己一个一个的输入信息。程序执行时从
5、文件中读出,该程序中用到结构体, 因为结构体可以很好地表示公交车站台名。写无返回值的主函数 void main()和子函数 void MENU()菜单函数对系统的功能进行显示,每次用户选择某一功能时都可以看到路线 的大致信息,以便于用户更准确的选择功能。其中利用 switch 条件分支语句进行子函数 功能的选择和调用。并且使用 while 循环语句进行多次循环执行,就可以实现对信息的多 次删除、增加、修改和查询,直到达到用户满意时由用户自己选择退出系统。同时我的程 序还使用了清屏函数,对上一次程序运行的结果清楚只显示本次运行的相关信息,这样就 可以使界面更加美观,简单明了,当用户对信息进行有关
6、的改动之后,用户根据自己的选 择是否保存入文件中,就可以保存他所要的信息了。 程序设计的主要流程图如下: 2、程序的设计步骤: 以下是我对本程序的每个模块的详细介绍: 一:主函数 构建无返回值的主函数,主函数用来实现对子模块的调用功能,用 while 循环语句来 控制循环次数,用户可以根据自己的需求选择任何时候退出系统。对子模块的调用主要使 No Yes 开始 输入选择信息 n 菜单 读取 显示 增加 删除 修改 输出 退出 菜单 结束 0n8 输入错误!请重新输入 n 读入路线信 用 switch 开关控制语句,根据选择实现用户要求的功能。 二:头文件,定义结构体,结构体中还嵌套了一个结构体,定义结构体成员, ,其对 整个程序都有效。 三:显示菜单 显示该系统所能完成的功能,其中包括:显示路线信息、增加线路信息、删除路线信 息、修改路线信息、查询路线信息、将信息保存带文件中和退出功能一目了然。根据用户 的需求自由选择功能实现。 四:从文件中读取线路信息 该功能以子函数的形式给出,执行此程序时首先定义文件指针 FILE *fp,在打开此文 件时,文本文档里应该有用户需