2022年车票管理系统c语言程序设计报告 .pdf
《2022年车票管理系统c语言程序设计报告 .pdf》由会员分享,可在线阅读,更多相关《2022年车票管理系统c语言程序设计报告 .pdf(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C程序课程设计报告题目车票管理系统院别数学与计算机学院班级姓名学号指导教师邓永江二一五年六 月名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 1 - 8 目录1、设计目的和要求 . . - 2 - 2、总体设计 . . - 2 - 3、详细设计 . . - 3 - 4、程序测试分析 . . - 4 - 4.1 菜单界面 . - 5 - 4.3 查询所有班次界面 . . - 6 - 4.4 查询班次界面
2、. - 6 - 4.5 增加班次界面 . - 7 - 4.6 售票界面 . - 8 - 4.7 退票界面 . - 9 - 4.8 修改班次界面 . - 9 - 4.9 删除班次界面 . - 10 - 4.10 退出界面 . - 10 - 5、 总结 . . - 11 - 附录 . . - 12 - 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 2 - 8 1、设计目的和要求任务:(1)录入班次信息 (
3、 信息用文件保存 ), 可不定时地增加班次数据(2) 浏览班次信息 , 可显示出所有班次当前状总( 如果当前系统时间超过了某班次的发车时间 , 则显示“此班已发出”的提示信息) 。(3)查询路线(起点、终点) :可按班次号查询 , 可按终点站查询(4)增加及修改班次和删除班次信息(5)售票和退票功能当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数要求:1. 在处理每个题目时, 要求从分析题目的需求入手,设计算法、编制上机程序和上机调试等若干步骤完成题目,最终写出完整的分析报告。前期准备工作
4、完备与否直接影响到后序上机调试工作的效率。在程序设计阶段应尽量利用已有的标准函数,加大代码的重用率。2. 设计的题目要求达到一定工作量(300 行以上代码),并具有一定的深度和难度。3. 程序设计语言推荐使用C,程序书写规范,源程序需加必要的注释;4. 每组同学需提交可独立运行的程序;5. 每组同学需独立提交设计报告书(每组一份),要求编排格式统一、规范、内容充实,不少于8 页(代码不算);6. 课程设计实践作为培养学生动手能力的一种手段,单独考核。目的:(1)进一步掌握和利用C语言进行程设计的能力;(2)进一步理解和运用结构化程序设计的思想和方法;(3)初步掌握开发一个小型实用系统的基本方法
5、;(4)学会调试一个较长程序的基本方法;(5)学会利用流程图表示算法;(6)掌握书写程序设计开发文档的能力。2、总体设计车票管理系统的功能: 1. 录入班次 2. 显示所有班次 3. 查询班次 4. 增加班名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 3 - 8 次 5. 售票 6. 退票 7. 修改班次 8. 删除班次 9. 退出图2-1 总体设计流程3、详细设计车票管理系统软件的功能模块:(1)提
6、供菜单界面,方便用户对程序个功能进行选择,选择要实现的功能按enter 键进入该功能。(2)接受用户输入的功能项,按 enter 键结束输入并将进入该系统,其需要的结果显示出来,方便用户查看。(3)完成每次功能 ,可保存用户的修改的信息,及时更新文件信息。下次查询时内容为最新信息。实时的信息更新对比等。一个名 TICKET 的结构体进行定义 : typedef struct TICKET char num10; /车次编号char hour3; /时间, ,小时char min3; /分钟char from10; /起始站char to10; /终点站float hours; /车程实际时间车
7、票管理系统录入班次所有班次显示查询班次增加班次售票退票修改班次删除班次退出显示主菜单,选择相应菜单项返回主菜单名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 4 - 8 int max; /最大车载容量int now; /已售票数CLASS;包括num10 hour3;min3 from10; to10;hours max; now;等结构体成员。然后对调用函数进行定义。void NewMessage(
8、) 新纪录录入函数void ShowTable1() void ShowTable2(int i) 线框调用 1和2不用每次输void Display() 显示所有函数void add() 增加记录void save() 保存函数void load() 读入信息函数void search() 查询函数void change() 修改函数void quit() 退出函数void Ticketorder() 售票函数void Ticketdelete() 删除函数int menu_select() 菜单函数int whether(int) 判断时间是否超出函数void find(char s1,c
9、har s2) 查询函数 /s1 为班次 /s2 为终点站void deletemessage() 删除函数int findnum(char s1) 班次查询函数void get(int,int) 修改及增加班次char *menu 菜单数组。该系统将这些信息均放在文件d: 车票管理系统中。最后定义 main() 函数,利用函数调用,实现程序的各种功能。将其放在系统文件d: 车票管理系统 0中。程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。程序把每种功能分开实现,更简单,实用程序更易理解。4、程序测试 分析名师资料总结 - - -精品资料欢迎下载 - - - - - - -
10、- - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 5 - 8 4.1 菜单界面图4-1 菜单界面如图4-1所示,该程序为用户提供菜单界面,用户可以对程序的各种功能进行选择,方便用户使用。选择 1-9并按enter 键进行操作。如选择出错,系统将提出警告,并提醒用户重新进行选择。4.2 录入班次界面图4-2 第一次输入时的界面图4-3 第二次输入时的界面如图4-2、 4-3所示,该功能实现录入班次信息。 选择1按enter 键进入该功能,程序提醒用户输入车次. 发车时间 .
11、起始站 . 终点站 . 行车时间 . 额定载量 . 已售票数,输入完毕后按 enter 键将完成录入班次结果,同时程序将再次提醒用户进行新的选择。而第二次输入时提醒已经输过,不能再加。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 6 - 8 4.3 查询所有班次界面图4-4 字符串重新统计界面如图4-4 所示,该功能实现显示所有班次。选择2按enter 键进入该功能,程序提直接显示出信息,按enter
12、 键,程序进入菜单项,程序将再次提醒用户进行新的选择。4.4 查询班次界面图 4-5 查询班次界面图4-6 选择查询方式的界面如4-5、4-6所示,该功能将实现程序运行班次的查询。选择3并按enter 键将实现该功能。分班次和终点站两种方式查询。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 7 - 8 4.5 增加班次界面图4-7 增加功能界面图4-8 增加前界面名师资料总结 - - -精品资料欢迎下
13、载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 8 - 8 图4-9 增加后界面如图4-7、4-8、4-9所示,该功能将增加班次信息,帮助用户更新班次信息。选择4并按enter 键将实现该功能,再按提示输入就行。按任意键返回主菜单。4.6 售票界面图4-10 选择售票功能界面图4-11 选择后的界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - -
14、- - - 第 9 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 9 - 8 图4-12 订票时的界面如图 4-10、4-11、4-12所示,该功能将帮助人们选择买票。选择5按enter键实现该功能,按任意键关闭程序。买票程序可提示买票成功否,且自动判断是否可卖。4.7 退票界面图 4-13 退票时的界面如图4-13所示,该功能将帮助人们选择退票。选择6按enter 键实现该功能,按任意键关闭程序。退票程序可提示退票成功否,且自动判断是否可退。4.8 修改班次界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - -
15、 - - - 名师精心整理 - - - - - - - 第 10 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 10 - 8 图 4-14 修改班次时的界面如图4-14所示,该功能将帮助人们修改班次信息。选择7按enter 键实现该功能,按任意键关闭程序。按提示操作修改班次。4.9 删除班次界面图 4-15 删除班次时的界面如图4-15所示,该功能可删除班次信息。选择8按enter 键实现该功能, 按任意键关闭程序。按提示操作删除班次。4.10 退出界面图 4-16 退出时的界面如图 4-16 所示,该功能可退出系统。选择9 按 enter 键实现该功能。名师资
16、料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 11 - 8 5、 总结经过一周的课程设计,我们学到了很多东西:巩固和加深了对结构体,指针的理解,提高综合运用所学知识的能力。培养了我们选用参考书,查阅手册及文献资料的能力。培养独立思考,深入研究,分析问题、解决问题的能力。通过实践解决实际问题,学会很多实用的函数。通过实际编译系统的分析设计、编程调试,掌握应用软件的分析方法和工程设计方法。能够按要求编写课程设
17、计报告书, 能正确阐述设计和实验结果, 正确绘制系统和程序框图。通过课程设计,培养了我严肃认真的工作作风,逐步建立正确的生产观念、经济观念和全局观念。对 c 语言和课程设计的认识:课程设计是把我们所学的理论知识进行系统的总结并应用于实践的良好机会,有利于加强我们用知识理论来分析实际问题的能力,进而加强了我们对知识认识的实践度,巩固了我们的理论知识,深化了对知识的认识,并为走向社会打下一个良好的基础。在这次课程设计中我遇到许多问题和麻烦,得到了老师的帮助和指导,才能够使得这次课程设计顺利的进行下去,另外,在程序调试过程中,也得到很多同学的帮助,给我及时指出错误,提出许多宝贵意见。在此对老师和同学
18、们表示感谢!经历这一周的锻炼,我也比较满意自己的表现。在这过程中我查阅了很多书,学到了很多课堂上没有的东西。很多知识我之前不知道的现在大部分都知道了,不过理解不够深透,导致在这一周里碰了不少壁!我觉得编程既是一项费时费力但也是有趣的。说它费时费力是因为它繁琐,而有趣是因为我很享受一段段的小程序编成功之后的喜悦,苦尽干来啊。我觉得编程是一件快乐的差事,我想我今后会加把时间学习它,把它学好。通过这次课程设计,使我们更加熟悉的掌握了C语言的运用。帮助我们熟悉了更多 C语言的功能,提高了我们的动手能力,学到了许多解决实际问题的宝贵经验同时也挖掘出了我们潜在的能力,使我们对自己更有自信,对编程也更有兴趣
19、。我相信,只要努力、勤奋、坚持不懈,就没有什么做不到的事,不能还没开始就退缩,要勇于拼搏,敢于创新。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 12 - 8 附录/ 源程序完整清单#include /宏定义函数#include /串操作及内存操作函数#include /调用系统函数#include /时间库函数#include /输入输出函数#define N 1000 /宏定义多条记录typed
20、ef struct TICKET /定义新结构体 TICKET char num10; /车次编号char hour3; /时间,小时char min3; /分钟char from10; /起始站char to10; /终点站float hours; /车程实际时间int max; /最大车载容量int now; /已售票数CLASS; int class_num=0; /初始班次总数为 0 CLASS recordsN; / 多条记录int system_time(); /系统时间void NewMessage(); /新纪录 *录入函数 * void ShowTable1(); /线框调用
21、 1, , ,不用每次输void ShowTable2(int i); /线框调用 2, , ,不用每次输void Display(); /显示所有函数void add(); /增加记录void save(); / 保存函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 13 - 8 void load(); / 按班次查询函数void search(); /查询函数void change(); /修
22、改函数 * void quit(); / /退出函数 * void Ticketorder(); / /*售票函数 * void Ticketdelete(); /删除函数 * int menu_select(); /菜单函数 * int whether(int); /判断时间是否超出函数 * void find(char s1,char s2); /查询函数 /s1为班次 /s2为终点站void deletemessage(); /删除函数int findnum(char s1); /班次查询函数void get(int,int); /修改及增加班次 * char *menu=*欢迎使用车票
23、管理系统*, n*MENU功能菜单 *, n 1. 录入班次, n 2. 显示所有班次, n 3. 查询班次, n 4. 增加班次, n 5. 售票, n 6. 退票, n 7. 修改班次, n 8. 删除班次, n 9. 退出; /*主函数 */ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 35 页 - - - - - - - - - C 语言课程设计报告- 14 - 8 void main() system(cls); /刷屏while(1) /菜单函数循环 s
24、witch(menu_select() /菜单函数 * case 1: NewMessage();break; /新纪录 *录入函数 * case 2: Display();break; / /显示case 3: search();break; /查找函数 * case 4: add();break; / /增加记录case 5: Ticketorder();break; /*售票函数 * case 6: Ticketdelete();break; /删除函数 * case 7: change();break; /修改函数 * case 8: deletemessage();break; /选
25、择调用删除函数case 9: quit();break; /退出函数 * /*菜单函数 */ int menu_select() /菜单函数 * char s5; /定义要输入的数字功能int c,i; system(cls); /清屏system(color 07);/改变颜色颜色属性由两个十六进制数字指定/ 第一个为背景,第二个则为前景。每个数字可以为以下任何值之一: 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 35 页 - - - - - - - - - C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年车票管理系统c语言程序设计报告 2022 车票 管理 系统 语言程序设计 报告
限制150内