C语言课程设计-火车票管理系统_第1页
C语言课程设计-火车票管理系统_第2页
C语言课程设计-火车票管理系统_第3页
C语言课程设计-火车票管理系统_第4页
C语言课程设计-火车票管理系统_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

二、设计内容设计一个火车票务管理系统,用C语言实现。对该系统的要求如下:需求描述:.系统功能(1)火车时刻信息录入。包括车次、日期、起点、终点、开车时间、到达时间、票价。数据存入数据文件hchsk.dat或hchsk.txt中。(2)火车时刻信息查询。按照车次查询按终点查询按起点查询按终点和日期查询(3)统计按终点统计每日的车次数按起点统计每日的车次数.系统主界面应有以下功能选项录入火车时刻信息查询火车时刻信息统计火车车次退出三、详细设计说明#include<stdio.h>#include<strmg.h>#include<stdlib.h>intMENUQ;〃菜单模块

intMENUQ;〃菜单模块voidINPUTQ; 〃输入模块voidSEARCH(); 〃查询模块voidSELECTO; 〃统计模块voidWRITE。; 〃文件记录模块voidPRINTQ; 〃打印模块voidREADO; 〃文件读取模块voidWRONGQ;〃纠错模块#defiiieN1000 〃最大列车组数〃输出记^definePrintH %s%13s%10s%10s%12s%15s%lls\n^T[i]xodeJ[i].dataJ[i]JpJ[i].apJ[i]JtJ[i].atJ[i].pnce〃输出记录格式^defineWrongH\n !!!!!!!!!!!愉入错误,请重新输入!!!!!!!!!!!5”^defineGeShi"车次 日期起点终点 开车时间 到达时间 票价\n”structTraincharcodeflO];〃车次chardata[10];//日期charIp[10];//leftplace起点charap[10];//arriveplace终点charlt[10];//lefttime开车时间charat[10];//arrivetime至达时间charprice[10];//票价)T[N];/*全局变量♦/inti=0; 〃输入计数器intn=0; 〃合计计数器charl[20]; 〃纠错空间/〃〃/〃〃/〃/〃〃〃〃〃〃/〃〃/〃/〃〃〃〃〃〃〃〃〃〃/〃〃〃/〃〃〃/〃/〃〃/〃〃/〃〃主函数intmain(){intx;dox=MENU();switch(x)caseklNPUTQ;break;case2:SEARCH。;break;case3:SELECT();break;case4:''H prmtfCW 正在退出,请按任意键退出”);pnntfCMn “);''H \nbreak;default:WRONG();break;}while(x!=4);return0;)/〃〃/〃〃〃〃〃〃〃/〃〃〃//〃〃〃〃〃/〃/〃〃/〃//〃〃〃/〃//〃〃〃/〃/〃〃〃〃/〃〃/菜单模块intMENUQintchoice;system(nclsn);printf(H\ii \nH);TOC\o"1-5"\h\zprintf(H \n”);printf(n - ---\n");printf(" — 欢迎进入火车票务管理系统 一4");printf(M 一 一\n");print%' \n");printf(H \n\nH);printf(H\n 请输入选项 W*);LL录入火车时刻信息\n");.查询火车时刻信息\n”);.统计火车车次W”);.退出\n”); W);请选择:”);printf("printf("printf("printf("printf("printf("scanf(H%d,\&choice);gets(l);returnchoice;)〃/〃/〃〃〃/〃/〃〃/〃〃〃//〃//〃〃〃/〃〃//〃/〃/〃〃〃/〃〃〃///〃/〃〃〃/〃〃/〃〃输入模块voidINPUTQ{charch;dosystem(Hclsn);prmtftn\n\ii =================欢迎进入录入火车时刻信息界而================\n");printfC'n 新建列车信息?(y/n)scanf("%c",&ch);gets(l);if(ch!=y&&ch!=,n,)WRONGQ;}while(ch!=y&&ch!=,n,);if(ch—•n1)break;prmtfC ”);prmtf(n\n录入第%d趟列车信息\iT,n+l);来源于网络gets(T[i].code);printf(n 日期gets(T[i].data);prrntfC 起点gets(T[i].lp);prrntfC 终点gets(T[i].ap);prrntfC 开车时间gets(T[i].lt);printf(n 到达时间gets(T[i].at);prrntfC 票价gets(T[i].price);n++;}while(i<N);WRITEO;system(nclsH); W,,); W,,);系统记载的列车信息如下W”); \n\nM);pnntfC'pnntfC'pnntfC'PRINTQ;)/〃〃/〃〃〃〃〃〃〃/〃〃〃/〃/〃〃〃〃/〃/〃/〃〃//〃〃〃//〃〃/〃〃//〃〃〃/〃〃/〃〃文件记录模块voidWRITE。{FILEif((fp=fopen(nhchsk.txt^Hwn))==NULL)prmtf("无法创建文件!\nW);getchar();return;)if((31=fopen("N.txt“,”w"》==NULL)〃用于记录共几趟车{printfC无法创建文件!\n");getchar();return;)fbr(i=O:i<n;i++)if(fv\Tite(&T[i].sizeof(structTrain),Lfjp)==0)printfC写入数据失败!\n\n”);3rintf(31,”%d”,n);fclose(fp);fclose(fpl);)/〃〃/〃〃〃〃〃〃〃/〃〃〃//〃〃〃〃〃/〃〃/〃/〃//〃/〃〃/〃/〃〃〃//〃〃〃//〃/〃〃/文件读取模块voidREAD(){FILE*fp/fpl;if((fp=fopen(Mhchsk.txt,7,rH))==NULL){pnntf("无法打开文件\n”);getchar();return;)if((fpl=fopenC,N.txt^V))==NULL){prmtf("无法打开文件!\nW);getchar();return;)fiscanf(用]J%d*&n);fclose(fpl);fbr(i=0;i<n;i++){fread(&T[i],sizeof(stnictTrain),1,fp);)fclose(fp);)/〃〃/〃〃〃〃〃〃〃/〃〃〃//〃〃〃〃〃/〃〃/〃/〃//〃〃〃//〃/〃〃〃//〃〃〃//〃//〃〃打印模块voidPRINT。{charch[10];READ();printf(n\nprmtf(GeShi);fbr(i=0;i<n;i++)printf(Print);prmtf(H====== ====== ============ ====== ===== ======m");printf("\n 按任意键返回上级菜单:gets(ch);)/〃〃/〃〃〃〃〃〃〃/〃〃〃//〃〃〃〃〃/〃〃/〃/〃//〃〃〃//〃/〃〃〃//〃〃〃/〃//〃〃/查询模块voidSEARCH(){charname1[10];〃车次charname2[10];〃终点charname3[10];〃起点charname41[10];//终点charname42[10];//日期charchoice;mtj;intk;do{system(Hclsn);printf(n\n\n ====——=======欢迎进入查询火车时刻信息界面—=========n");printf(n\n +++++++++++++++H+请选择查找方式++H++++++++++++++\n\n");prrntfC --1.显示所有列车信息 2.按车次查询 3.按终点查询--W”);prrntfC --4.按起点查询 5.按终点和日期查询 6.返回上级菜单一An”);printf(n\n 请选择:”);scanf(,,%d,\&j);gets⑴;switch。){PRINTQ;break;pnntf("\n —请输入车次一:");gets(namel);break;pnntf("\n —请输入终点一:");gets(name2);break;pnntfC'n 一请输入起点一:八);gets(name3);break;pnntf("\n 一请输入终点一:");gets(name41);printf(”\n —请输入日期一:”);gets(name42);break;break;default:WRONGQ;break;)READO;k=0;if(j=2){for(i=0;i<n;i++)(if(strcmp(T[i].l)==0)(prmtf("\n 按车次查找列车信息成功!\n”);pnntf(H\nprintf(GeShi);break;}}for(i=0;i<n;i++)(if(strcmp(T[i].l)==0)来源于网络prin氓Print);k++;))pnntf("_=======_=========_=========_=======_=========_=====3);pnntf("\n ->共查询到%d趟列车信息,请按任意键返回"㈤;gets(l);)if(J=3){for(i=0;i<n;i++)(if(strcmp(T[i].2)==0)(pnntf("\n 按终点查找列车信息成功!\n”);pnntf(H\n—========—=========—========—========—=========—========\n');prin氓GeShi);break;))for(i=0;i<n;i++)(if(strcmp(T[i].2)==0)(prin氓Print);k++;)prmtff\n“);pnntf(fl\n ->共查询到%d趟列车信息,请按任意键返回<- 4);gets(l);){for(i=0;Kn;i++)(if(strcmp(T[i].Ip,name3)=0)(pnntf("\n 按起点查找列车信息成功!\n”);pnntf(H\n_=======_=========_========_=========_=========_=======g;prin氓GeShi);break;}}for(i=0;i<n;i++)(if(strcmp(T[i].lp,name3)=0)(prin氓Print);k++;}}pnntfl"_=======_=========_========_=========_=========_=======g;pnntfCW ->共查询到%d趟列车信息,请按任意键返回 "㈤;gets(l);for(i=0;i<n;i++)(if(strcmp(T[i].41)==0&&strcmp(T[i].data,name42)==0)(pnntf("\n 按终点和日期查找列车信息成功!\n");pnntf(H\n=========—=========—===================—==================^);prin氓GeShi);break;))for(i=0;i<n;i++)(if(strcmp(T[i].41)==0&&strcmp(T[i].data,name42)=0)(prin氓Print);k++;))pnntf("=========—=========—===================—==================^>;prmtfC'n ->共查询到%d趟列车信息,请按任意键返回〈一"上);gets(l);)do{system(Hclsu);pnntf(n\n\n 继续查找(1),返回主菜单(2)<-- ”);choice=getchar();gets⑴;if(choice!=,r&&choice!=,2,)WRONG(J;}while(choice!=,r&&choice!=,2,);}while(choice!-21);)/〃〃/〃〃〃〃〃〃〃//〃/〃/〃/〃〃〃〃/〃〃/〃/〃〃〃〃〃//〃/〃〃〃//〃〃〃//〃/〃〃/统计模块voidSELECTOcharname1[10];//终点charname2[10],起点intt,k;charchoice;dosystem(HclsH);printf("\n\ii ======―==========欢迎进入统计火车车次界而===================口");prmtf("\n ++++请选择统计方式-|--|--|--|-prrntfC 1.按终点统计每日的车次数W”);prrntfC 2.按起点统计每日的车次数W)printf("\n 请选择:");scanfC%d\&t);gets⑴;switch(t){pnntf("请输入终点:”);gets(namel);break;pnntf("请输入起点:”);来源于网络gets(name2);break;default:WRONG。;break;)READQ;{k=O;for(i=0;i<n;i++)(if(

温馨提示

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

评论

0/150

提交评论