ImageVerifierCode 换一换
格式:DOCX , 页数:42 ,大小:330.26KB ,
资源ID:345551      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-345551.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言车票管理系统.docx)为本站会员(wj)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

c语言车票管理系统.docx

1、课 程 设 计 报 告课程名称 C语言课程设计 课题名称 车票管理系统 专 业 自动化 班 级 1402 学 号 201401020208 姓 名 宋爱军 指导教师 陈世清 杨子华 黄哲 2014年 12 月 27 日湖南工程学院课 程 设 计 任 务 书课程名称 C语言课程设计 课 题 车票管理系统 专业班级 自动化 学生姓名 宋爱军 学 号 201401020208 指导老师 陈世清 杨子华黄哲 审 批 任务书下达日期 2014 年 12 月 20 日任务完成日期 2014年 12 月 27 日目录1、 设计目的 2、 总体设计3、 详细设计4、 调试与测试:5、 总结与体会附:源程序清单

2、和使用说明一、课程设计目的1熟练掌握C语言的应用及特点;2掌握函数声明、定义和使用的方法;3熟练掌握C语言中的对文件进行操作的基本方法;4熟练掌握结构体的使用方法;5掌握链表的基本操作。本课程设计的目标就是要达到理论与实际应用相结合,提高学生组织数据及编写大型程序的能力,并培养基本的、良好的程序设计技能以及各种能力。 设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握数据结构和算法设计技术,掌握分析、解决实际问题的能力。通过这次设计,要在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严

3、格的训练。二、总体设计1设计内容:一车站每天有n个发车班次,每个班次都有一班次号(1、2、3n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量。如班次 发车时间 起点站 终点站 行车时间 额定载量 已定票 人数18:00 湘潭 长沙 2 45 30 1026:30 湘潭 常德 4 40 40 20功能要求:系统能提供下列服务:1)、录入班次信息(信息用文件保存),可不定时地增加班次数据。2)、浏览班次信息,可显示出所有班次当前状况(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信息)。3)、查询路线:可按班次号查询 ,可按终点站查询。4)、

4、售票和退票功能。(1)当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数(2)退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数。2设计要求:1)、设计正确,方案合理。2)、界面友好,使用方便。3)、程序精炼,结构清晰。4)、设计报告5000字以上,。5)、上机演示。3概要设计车票管理系统的功能为 1. 录入班次 2. 显示所有班次 3. 查询班次 4. 增加班次 5. 售票 6. 退票 7. 修改班次 8. 删除班次 9. 退出 车票管理系统的功能模块有:(1)提供菜单界面,方便用户对程序个功能进行选择,选择要实现的功能按enter键进入

5、该功能。(2)接受用户输入的功能项,按enter键结束输入并将进入该系统,其需要的结果显示出来,方便用户查看。(3)完成每次功能,可保存用户的修改的信息,及时更新文件信息。下次查询时内容为最新信息。实时的信息更新对比等。一个名TICKET的结构体进行定义,包括num10 hour3; min3 from10; to10; hours max; now;等结构体成员。然后对调用函数进行定义。int system_time()系统时间, void NewMessage() 新纪录录入函数, void ShowTable1() void ShowTable2(int i) 线框调用1和2不用没次输,

6、 void Display()显示所有函数, void add()增加记录, void save() 保存函数, void save()保存函数, void load() 按班次查询函数, void search() 查询函数, void change()修改函数, void quit()退出函数, void Ticketorder() 售票函数, void Ticketdelete()删除函数, int menu_select()菜单函数, int whether(int)判断时间是否超出函数, void find(char s1,char s2) 查询函数/s1为班次/s2为终点站, vo

7、id deletemessage()删除函数, int findnum(char s1)班次查询函数, void get(int,int)修改及增加班次, char *menu菜单函数。该系统将这些信息均放在文件d:车票管理系统0中。最后定义main()函数,利用函数调用,实现程序的各种功能。将其放在系统文件d:车票管理系统0中。程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。程序把每种功能分开实现,更简单,实用程序更易理解。三、详细设计1进度安排第17周 星期一 布置任务,查找资料。 星期二 确定总体方案,进行详细设计。 星期三 编写程序,上机调试。 星期四 编写程序,上机调

8、试。星期五 答辩,总结。星期六星期天 写课程设计报告。2.模块功能说明所有函数及功能add() /增加记录change() /修改函数deletemessage() /删除班次信息Display() /显示所有函数find(char s1,char s2) /查询函数findnum(char s1) /查找班次get(int i,int j) / 修改及增加班次load() /按班次查询函数main() /主函数menu_select() /菜单函数NewMessage() /录入函数quit() /退出函数save() /保存函数search() /查询调用ShowTable1() /线框调

9、用1,不用没次输ShowTable2(int i) /线框调用2。不用没次输。Ticketdelete() /删除函数Ticketorder() /售票函数whether(int i) /判断时间是否超出函数. 输入及输入的形式char num10; /车次编号char hour3; /时间,小时char min3; /分钟char from10; /起始站char to10; /终点站float hours; /车程实际时间int max; /最大车载容量int now; /已售票数. 输出的形式Printf3模块功能详细设计 车票管理系统 调用主菜单选项 输入选择后分别结束 完成功能后返回

10、主菜单1调用录入班次2调用显示所有班次3调用查询班次4调用增加班次6调用退票5调用售票7调用修改班次8调用删除班次9调用退出四调试与测试1.功能菜单如上图所示,该程序为用户提供菜单界面,用户可以对程序的各种功能进行选择,方便用户使用。选择1-9并按enter键进行操作。如选择出错,系统将提出警告,并提醒用户重新进行选择。2显示所有班次功能如上图所示,该功能实现显示所有班次。选择2按enter键进入该功能,程序直接显示出信息,按enter键,程序进入菜单项,程序将再次提醒用户进行新的选择。3查询功能 如上图所示,该功能将实现程序运行班次的查询。选择3并按enter键将实现该功能。分班次和终点站两

11、种方式查询。.按班次查询.按终点站查询4.增加班次功能5增加班次成功显示结果如上图所示,该功能将增加班次信息,帮助用户更新班次信息。选择4并按enter将实现该功能,再按提示输入就行。按任意键返回主菜单。6.订票功能如上图所示,该功能将帮助人们选择买票。选择5按enter键实现该功能,按任意键关闭程序。买票程序可提示买票成功否,且自动判断是否可卖。7.退票功能 如上图所示,该功能将帮助人们选择退票。选择6按enter键实现该功能,按任意键关闭程序。退票程序可提示退票成功否,且自动判断是否可退。8修改班次如上图所示,该功能将帮助人们修改班次信息。选择7按enter键实现该功能,按任意键关闭程序。

12、按提示操作修改班次。9.删除班次如上图所示,该功能可删除班次信息。选择8按enter键实现该功能,按任意键关闭程序。按提示操作删除班次。10.退出如上图所示,该功能可退出系统。选择9按enter键实现该功能五、总结与体会1心得:经过这次集中上机实习,我充分认识到了C语言的用途是非常广的,功能也非常强大,是学计算机不可缺少的语言。更重要的是,在这次编程中熟悉了编写一个比较复杂程序的流程,以及发现问题、解决问题的能力,为下一步计算机语言的学习做了准备。之前感觉遥不可及的功能,现在可以实现了,应当感谢老师和同学的热心帮助,这是我得以及时完成这个程序的重要因素. 我们改进的思想就是尽可能让它变得简单!

13、还有很多的不足和瑕疵需要我们继续去奋斗,希望老师不吝赐教!2体会:这次实验让我们收获良多,这让我们得到了很多经验,又认识了很多的不足,在c语言这方面我们还需要很多的历练!我想通过这次的练习,我们都有所进展,我们现在需要的就是实践。完成了任务我们还是很有成就感的,也增添了我们对c语言的热情. 在今后我们知道,凡事都要有自己的见解,我们可以借鉴别人,但别人是不可复制的,我们要明白只有理解才是自己的,只有通过自己实践我们才能深刻的认识到这一点!我相信,只要努力、勤奋、坚持不懈,就没有什么做不到的事,不能还没开始就退缩,要勇于拼搏,敢于创新。附件:1源程序#include /宏定义函数#include

14、 /串操作及内存操作函数#include /调用系统函数#include /时间库函数 #include /输入输出函数#define N 1000 /宏定义多条记录typedef struct TICKET /定义新结构体TICKETchar num10; /车次编号char hour3; /时间,小时char min3; /分钟char from10; /起始站char to10; /终点站float hours; /车程实际时间int max; /最大车载容量int now; /已售票数CLASS;int class_num=0; /初始班次总数为0 CLASS recordsN; /

15、多条记录int system_time(); /系统时间void NewMessage(); /新纪录*录入函数*void ShowTable1(); /线框调用1,不用没次输 void ShowTable2(int i); /线框调用2,不用没次输 void Display(); /显示所有函数void add(); /增加记录void save(); / 保存函数void load(); / 按班次查询函数void search(); /查询函数void change(); /修改函数* void quit(); / /退出函数*void Ticketorder(); / /*售票函数*

16、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=*欢迎使用车票查询系统*, tttt湖南工程学院 电气信息学院 自动化 1402 宋爱军 nn*MENU功能菜单*,n 1. 录入班次 ,n 2. 显示所

17、有班次 ,n 3. 查询班次 ,n 4. 增加班次 ,n 5. 售票 ,n 6. 退票 ,n 7. 修改班次 ,n 8. 删除班次 ,n 9. 退出 ; /*主函数*/void main()system(cls); /刷屏while(1) /菜单函数循环switch(menu_select() /菜单函数*case 1: NewMessage();break; /新纪录*录入函数*case 2: Display();break; / /显示case 3: search();break; /查找函数*case 4: add();break; / /增加记录case 5: Ticketorder(

18、);break; /*售票函数*case 6: Ticketdelete();break; /删除函数*case 7: change();break; /修改函数*case 8: deletemessage();break; /选择调用删除函数case 9: quit();break; /退出函数*/*菜单函数*/int menu_select() /菜单函数*char s5; /定义要输入的数字功能int c,i; system(cls); /刷屏 system(color 09);/改变颜色 for(i=0;i11;i+)printf(%s,menui); /输出菜单各项) i=0; wh

19、ile(c9) /判断是否是1到9的命令printf(n); /输出换行 printf(*); printf(n请选择(1-9):);scanf(%s,s);c=atoi(s); /atoi将字符串转换成一个整数值 /输出菜单面return c; /返回请求 /*录入函数*/void NewMessage() /*录入函数* int i=0,j=5,h; /char s5;FILE *fp; /定义文件型指针变量system(cls); /刷屏if(fp=fopen(d:车票管理系统0.dat,rb)!=NULL) /fopen打开文件 printf(车票信息已经存在请选择增加功能!n);pr

20、intf(任意输入则返回菜单n);scanf(%s,s);i=1; /通过是1if(i=0) system(cls); /刷屏printf(请输入要录入班次总数:n);scanf(%d,&class_num); /指向班次指针system(cls); /刷屏for(i=0;iclass_num;i+) system(cls); /刷屏printf(请输入第%d个班次信息:n,i+1);h=-1;for(;h!=i;) /循环输出printf(请输入班次:n);scanf(%s,recordsi.num);for(h=0;hi;h+)if(strcmp(recordsh.num,recordsi.num)=0) /判断字符串比较是否相等, 待比较的字符串 printf(输入错误!该班次已存在!n);break; /返回get(i,j); /修改及增加班次*j=5;save(); /调用保存函数/*显示所有函数*/void Display() /显示所有函数int i,j;system(cls); /刷屏load(); / 调用按班次查询函数ShowTable1();

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2