火车票管理系统—课程设计附源代码_第1页
火车票管理系统—课程设计附源代码_第2页
火车票管理系统—课程设计附源代码_第3页
火车票管理系统—课程设计附源代码_第4页
火车票管理系统—课程设计附源代码_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 fAIYUAN UNIVERSITY OF SCIENCE AND TECHNOLOGY计算机科学与技术系信息管理与信息系统专业程序设计综合课程设计报告(2013/2014学年第一学期)学生姓名: 学生班级: 学生学号: 指导教师:2013年 1 月 8 日火车票管理系统第一章 课程设计的目的和要求高级语言课程设计的主要目的是培养学生能够提高综合应用语言的能力,通 过课程设计的训练,使学生能及时巩固已学的知识,补充未学的但有必要的内容 , 掌握应用计算机解决实际问题的基本方法, 熟悉程序开发的全过程, 提高综合应用 语言的能力。高级语言程序设计的主要任务是要求学生遵循软件开发过程的基本 规

2、范,运用结构程序设计的方法按照课程设计的题目要求, 分析, 编写,调试和测 试高级语言程序及编写设计报告。1.1 课程设计的目的1. 巩固和掌握高级语言程序设计基本概念;2. 掌握基本的程序设计方法;3. 掌握开发软件所需的需求定义能力;4. 提高书写程序设计说明文档的能力;5. 提高综合运用高级语言的能力,强化编程和调试能力。1.2 课程设计的基本要求1. 根据所给的课程设计题目,分析课程设计题目的要求;2. 对系统功能模块进行分析,写出详细的设计说明文档;3. 编写程序代码,调试所编写程序使其能正确运行;4. 设计完成的软件便于操作和使用;5. 设计完成后提交课程设计报告。第二章 课程设计

3、任务内容2.1简介火车票管理系统:是为广大群众开发的,帮助人们查询车次信息,订票和退票, 大大节约了人们的时间,是铁路营运公司所需要的全部功能的一个综合的管理系统。2.2功能说明(1) 录入班次信息:信息用文件保存,可不定时地增加班次数据。(2) 浏览班次信息:可显示出所有班次当前状总 (如果当前系统时间超过了某班 次的发车时间,则显示“此班已发出”的提示信息)。(3) 查询路线:可按班次号查询,可按终点站查询。(4) 售票和退票功能:A:当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售 票,自动更新已售票人数。B:退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售

4、 票人数。(5) 删除功能:该功能可以删除录入的错误信息。(6) 订购功能:该功能可以方便旅客提前预定。3.1模板设计图第三章详细设计说明3.2主函数流程图查询行车路线浏览班次信息录入班次信息3.3子函数流程图是否存在是否存在录入班次成功结束图3-3录入班次流程图是第四章编码与调试4.1软件使用说明打开软件后,会出现一个主页面,这时候你首先要把火车票信息调用出来, 这款软件具备很多功能,例如用键盘操作页面;可以更改班次信息;浏览班次信 息;订票;退票等等,并且能够随时退出系统得功能。这款软件简单易操作,希望大家会喜欢。4.2运行结果及截图1、进入系统页面录入班次信息"D :K1 i

5、c rcsofr 孔 a Ctuid ; n 亡 d f rr c nrj £ Deg 2Bi nDeb Lql &xe ”车票背理系统日期:2«11/1/3/22:57录人班吹荷且2,測览班坎荷見 長询讦牟斑线售票写退票索轨5.退出段系统诺进拦你所需要扌功购:1 谓输入立件名或者文件路轻名;£:班坎总车时何起点1 3;43衣挣2 Gt36衣索3 1510太原耳15:55衣療51H:2S衣療G23:1木療711 ;*+6太療亠.-一一点州r津京都州门终却石天北成广履行车时间(小时)獭乍読爭11.9 屿E.Q4613 3BQ12.9 80&.Q902

6、3.9 励?.e列L宇票人数3S4S54?6E09850按任京粪呵主菜牟图4-1录入班次信息图2、浏览录入班次信息舄劇笔亦慣要的切誌:2 班次 坦车旺何1 9:432 &:3G3 1E:1Q吗15:555Ht;?9EZ3: >11T11:匾按任意懈回主慕单庄点打家序京都州门 變郑石天北磁广厦忙车时I机小时)1 13 e12. £.9 2? e7.0己定畀人数30Jt车己发出H0此车己发出5173M此年己箧出9050此车已发出图4-2浏览班次信息图3、查询你乘车需要的信息(i)按班次查询企询子菜学S®賁主按按逅谪奚择作所斋雯旳巧徘;1i青施入要晋询的更籾号:3址

7、次 发车时河起点 親点行车时间(小时额定我莹已定寒人数315:13太原 天评13.0 SB5H按任意整回主菜单图4-3班次查询图(2) 按终点站查询请遥铎【祷i爲墓的功恕2 班次 坦李旺何1 9:432 &:3C3 1E:1Q吗15:555m;?9EZ3 : m?11按任蠢糧回主慕单庄点打家序京都/'HI': 终茸石天北成广厦仃车対何(小时)誣宦载亘ems13 6GB12.39s.g9Q23.e1 QB7.06Q己定票人数30此车己发出H0此车己发出5178BQ此年己筐出9Q50此车已发出图4-4班次查询图4、订票与退票(1)订票成功订塞与退票莱单i.iTS2. 退禀3

8、. J10主秦单.畢请间 留,时0 的兀氏牟:1 希要票 你入订 茅<的欢 进请保班3用终天删点原Ji¥点津厅车时闾(I睛)舉定载虽13.9 GO图4-5订票成功图(2)订票失败1 订瞑2.逞架氛返回主菜单- 选样你需要的功能门请输入要订购闻手宗E勺氓腹煜对不起”今天的这趟车已农出请明天再未,谢谢合作'旣册发车时间起戌 终点行车时何(小时)额定捷蛋己定喫人戳2E:30丸原 石家庄G.B 斗日HQ图4-6订票失败图(3) 退票成功奈Mm 订型返 12 3念择怀譎畏的E能圧堵輸入喪退吃的弃察的址医心迟订车幕成功,谢谢使用*班次 废车时间起点 终点行车时间(小时)额定載量己定

9、寂人数315J0丸原 天津13 6 G9訓图4-7退票成功图(4) 退票失败订票与退票菜卑遗请对册斗无点原 M出起太 坎发 琳.己 的车 :2票摘 能车读间 肪的的时5 的買车舟 募幄今发15 希要' fr入起 择<不次朋点京 Eku 匕 4fft勢 n厅丰时问I丿卜盯12.9图4-8退票失败图5、退出系统请进择你閉孟宴的功砲汚卜卄嶽輕務冥舅援餐崟峯也AE養摇沖毎擇词谢|使幷才:杀纭欣迎下 欣目半续彳吏用養抵鼻舅兴挥祁拧冥沖峯養峯谢AC哭挥沖兴 Press any key to cm tin”.图 4-9 退出系统图第五章课程设计心得与体会三周的课程设计结束了,我终于完成了这次高

10、级语言课程设计,并且认真完 成了课程设计报告。在这次的课程设计中不仅检验了我所学习的知识,也培养了 自己的耐心。课程设计是我们专业课程知识综合应用的实践训练,也是我们迈向 社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程 设计,我深深体会到这句千古名言的真正含义.通过这次课程设计,本人在多方面都有所提高。通过这次火车票系统设计, 综合运用本专业所学课程的理论, 巩固与扩充了高级语言设计等课程所学的内容, 掌握高级语言设计的方法和步骤,掌握了高级语言设计的基本的概念,了解了高 级语言的基本结构,提高了编程能力,绘图能力,熟悉了规范和标准,同时各科 相关的课程都有了全面的复

11、习,独立思考的能力也有了提高。在这次设计过程中,大大激发了我编程的兴趣,在设计的过程中亦遇到了许 多困难,我会向同学和学长寻求帮助,在交流中共同进步,也体现出自己设计程 序的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦 心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。附录一 参考文献1 张海藩编著软件工程导论(第四版)M.清华大学出版社.2006.5.2 Roger S.Pressman. 软件工程 实践者的研究方法 . 机械工业出版社 .19903 张敬等编著 . 软件工程教程 . 北京航空航天大学出版社 .2003.7.4 Steve maguire. Wr

12、iting Clean Code (姜静波等译).电子工业出版社.1993谭浩强著.vvC+程序设计 >>.清华大学出版社 严蔚敏.吴伟民编著.<< 数据结构(C语言版)>>.清华大学出版社附录二 程序清单以下是火车票管理系统的完整程序清单: #include<stdio.h> #include<stdlib.h> #include<dos.h> #include<time.h> #include<conio.h> #include<string.h> const int MAX=20;

13、const int N=50; const int MAX; enum FALSE,TRUE; struct time int hour; int minutes; struct ticket int SerialNumber; struct time SetOut; char DeparturePointMAX; char TerminalPointMAX; float LastTime; int FixNumber; int FixedNumber;carN;int RecordNumber; int FLAG=FALSE;int ShowMessage(void); /载入原始数据voi

14、d SaveRecord(ticket x); /void mainmenu(void); / 主菜单void InsertMessage(void); /录入班次信息void SearchMenu(void); / 查询路线子菜单void SearchByNumber(void); /按班次号查询void SearchByAddress(void); /按终点站查询void TicketManagement(void); /车票售出与退回void TicketOrder(void); /售票void TicketDelete(void); /退票void exit(void); / 退出该系

15、统储存信息到文件中int main(void)domainmenu();while(FLAG=FALSE);return 0;void mainmenu(void)system("color 1f");system("mode con: cols=140 lines=130");char functionNumber;printf(" 车票管理系统 nn");printf("日期 :2011/1/3/22:57n");printf("=n");printf("1.录入班次信息 tn&q

16、uot;);printf("2.浏览班次信息 tn");printf("3.查询行车路线 tn");printf("4.售票与退票系统 tn");printf("5.退出该系统 tn");printf("=n");printf(" 请选择你所需要的功能 :"); scanf("%c",&functionNumber); switch(functionNumber)case '1':InsertMessage();printf(&qu

17、ot;n 按任意键回主菜单 n");getchar();getchar();break;case '2':RecordNumber=ShowMessage();printf("n 按任意键回主菜单 n");getchar();getchar();break;case '3':SearchMenu();printf("n 按任意键回主菜单 n");getchar();getchar();break;case '4':TicketManagement();getchar();getchar();bre

18、ak;case '5':FLAG=TRUE;exit();break;default:printf("输入错误 , 请确保你的输入为 1-5.n");printf(" 按任意键回主菜单 n");getchar();getchar();/switch endsFLAG=FALSE;void InsertMessage(void)FILE *fp;char MAX;int i;printf(" 请输入文件名或者文件路径名 :");scanf("%s",);if(fp=fopen(,"r&quo

19、t;)=NULL)printf("文件s不可读,请确认文件曲在或者文件路径正确.nn",);mainmenu();for(i=RecordNumber;!feof(fp)&&!ferror(fp);i+)fscanf(fp,"%d%d%d",&cari.SerialNumber,&cari.SetOut.hour,&cari.SetOut.minutes);fscanf(fp,"%s%s%f%d%d",&cari.DeparturePoint,&cari.TerminalPoin

20、t,&cari.LastTime,&cari.FixNumber,&cari.FixedNumber);SaveRecord(*(car+i);RecordNumber=i;/* 输出更新后的订票记录*/printf("班次t发车时间t起点t终点t行车时间(小时)t额定载量t已定票人数 n");for(i=0;i<RecordNumber;i+)printf("%dt%d:%dtt",cari.SerialNumber,cari.SetOut.hour,cari.SetOut.minutes);printf("%s

21、t%stt%.1ft %dtt%dn",cari.DeparturePoint,cari.TerminalPoint,cari.LastTime,cari.FixNumber,cari.FixedNumber);fclose(fp);int ShowMessage(void)int i;FILE *fp;if(fp=fopen("add.txt","r")=NULL)printf(" 读取数据失败 , 请检查文件 add.txt 是否存在 .n");exit(-1); for(i=RecordNumber;!feof(fp)

22、&&!ferror(fp);i+) fscanf(fp,"%d%d%d",&cari.SerialNumber,&cari.SetOut.hour,&cari.Se tOut.minutes);fscanf(fp,"%s%s%f%d%d",&cari.DeparturePoint,&cari.TerminalPoint,&c ari.LastTime,&cari.FixNumber,&cari.FixedNumber);int count=i;printf("班次t

23、发车时间t起点t终点t行车时间(小时)t额定载量t已定票人数 n");for(i=0;i<count;i+) printf("%dt%d:%dtt",cari.SerialNumber,cari.SetOut.hour,cari. SetOut.minutes);printf("%st%stt%.1ft %dtt%dt",cari.DeparturePoint,cari.Term inalPoint,cari.LastTime,cari.FixNumber,cari.FixedNumber);/* 调用系统时间实现的功能 :如果车已发出,

24、则打出提示"此车已发出", 但是此 处有错误 */time_t tval;struct tm *now;tval = time(NULL);now = localtime(&tval);if(now->tm_hour=cari.SetOut.hour&&now->tm_min>cari.SetOut.minute s)|(now->tm_hour>cari.SetOut.hour)printf(" 此车已发出 ");printf("n");return count;void Sea

25、rchMenu(void)system("color 1f");system("mode con: cols=140 lines=130");char functionNumber;printf(" 查询子菜单 n");printf("=n");printf("1.按班次号查询 tn");printf("2.按终点站查询 tn");printf("3.返回主菜单 tn");printf("=n");printf(" 请选择你所

26、需要的功能 :"); scanf("%*c%c",&functionNumber); switch(functionNumber)case '1':SearchByNumber();break;case '2':SearchByAddress();break;case '3':getchar();mainmenu();break;default:printf(" 输入错误 , 请确保你的输入为 1-3.n");printf(" 按任意键回查询子菜单 n");getcha

27、r();getchar();SearchMenu();void SearchByNumber(void)int SearchNumber;printf(" 请输入要查询的班次号 :");scanf("%d",&SearchNumber);printf(" 班次t发车时间t起点t终点t行车时间(小时)t额定载量t已定票 人数 n");printf("%dt%d:%dtt",carSearchNumber-1.SerialNumber,carSearchNumb er-1.SetOut.hour,carSearchNumber-1.SetOut.minutes);printf("%st%stt%.1ft %dtt%dn",carSearchNumber-1.DeparturePoint,carSearchNumber-1.TerminalPoint,carSearchNumber-1.LastTime,carS earchNumber-1.FixNumber,carSearchNumber-1.FixedNumber);void SearchByAddress(void)int i;char AddressMAX

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论