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

下载本文档

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

文档简介

C语言专业课程设计火车票标准管理系统二、设计内容设计一个火车票务管理系统,用C语言实现。对该系统的要求如下:需求描述:(1)火车时刻信息录入。包括车次、日期、起点、终点、开车时间、到达时间、票价。。(2)火车时刻信息查询。按照车次查询按终点查询按起点查询按终点和日期查询(3)统计按终点统计每日的车次数按起点统计每日的车次数2.系统主界面应有以下功能选项录入火车时刻信息查询火车时刻信息统计火车车次退出三、详细设计说明#include<>#include<>#include<>intMENU();//菜单模块voidINPUT();//输入模块voidSEARCH();//查询模块voidSELECT();//统计模块voidWRITE();//文件记录模块voidPRINT();//打印模块voidREAD();//文件读取模块voidWRONG();//纠错模块#defineN1000//最大列车组数#definePrint"%s%13s%10s%10s%12s%15s%11s\n",T[i].code,T[i].data,T[i].lp,T[i].ap,T[i].lt,T[i].at,T[i].price//输出记录格式#defineWrong"\n!!!!!!!!!!!输入错误,请重新输入!!!!!!!!!!!\n"#defineGeShi"车次日期起点终点开车时间到达时间票价\n"structTrain{ charcode[10];//车次 chardata[10];//日期 charlp[10];//leftplace起点 charap[10];//arriveplace终点 charlt[10];//lefttime开车时间 charat[10];//arrivetime到达时间 charprice[10];//票价}T[N];/*全局变量*/inti=0;//输入计数器intn=0;//合计计数器charl[20];//纠错空间///////////////////////////////////////////////////////////////////////////////////////主函数intmain(){ intx; do { x=MENU(); switch(x) { case1:INPUT();break; case2:SEARCH();break; case3:SELECT();break; case4: printf("\n---------------------------------------"); printf("\n正在退出,请按任意键退出"); printf("\n\n"); printf("\n---------------------------------------\n"); break; default:WRONG();break; } }while(x!=4); return0; }///////////////////////////////////////////////////////////////////////////////////////菜单模块intMENU(){ intchoice; system("cls"); printf("\n----------------------------------------------\n"); printf("----------------------------------------------\n"); printf("------\n"); printf("---欢迎进入火车票务管理系统---\n"); printf("------\n"); printf("----------------------------------------------\n"); printf("----------------------------------------------\n\n"); printf("\n--------------请输入选项-------------\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("-----------------------------------------\n"); printf("请选择:"); scanf("%d",&choice); gets(l); returnchoice;}///////////////////////////////////////////////////////////////////////////////////////输入模块voidINPUT(){ charch; do { system("cls"); printf("\n\n====================欢迎进入录入火车时刻信息界面====================\n"); do { printf("\n新建列车信息?(y/n)"); scanf("%c",&ch); gets(l); if(ch!='y'&&ch!='n') WRONG(); }while(ch!='y'&&ch!='n'); if(ch=='n') break; printf("---------------------"); printf("\n录入第%d趟列车信息\n",n+1); printf("车次"); gets(T[i].code); printf("日期"); gets(T[i].data); printf("起点"); gets(T[i].lp); printf("终点"); gets(T[i].ap); printf("开车时间"); gets(T[i].lt); printf("到达时间"); gets(T[i].at); printf("票价"); gets(T[i].price); n++; i++; }while(i<N); WRITE(); system("cls"); printf("\n"); printf("--------------------------------\n"); printf("系统记载的列车信息如下\n"); printf(" if(fwrite(&T[i],sizeof(structTrain),1,fp)==0) printf("写入数据失败!\n\n"); fprintf(fp1,"%d",n); fclose(fp); fclose(fp1);}///////////////////////////////////////////////////////////////////////////////////////文件读取模块voidREAD(){ FILE*fp,*fp1; if((fp=fopen("","r"))==NULL) { printf("无法打开文件\n"); getchar(); return; } if((fp1=fopen("","r"))==NULL) { printf("无法打开文件!\n\n"); getchar(); return; } fscanf(fp1,"%d",&n); fclose(fp1); for(i=0;i<n;i++) { fread(&T[i],sizeof(structTrain),1,fp); } fclose(fp);}///////////////////////////////////////////////////////////////////////////////////////打印模块voidPRINT(){ charch[10]; READ(); printf("\n===========================================================================\n"); printf(GeShi); for(i=0;i<n;i++) printf(Print); printf("===========================================================================\n"); printf("\n按任意键返回上级菜单:"); gets(ch);}///////////////////////////////////////////////////////////////////////////////////////查询模块voidSEARCH(){ charname1[10];//车次 charname2[10];//终点 charname3[10];//起点 charname41[10];//终点 charname42[10];//日期 charchoice; intj; intk; do { system("cls"); printf("\n\n====================欢迎进入查询火车时刻信息界面====================\n"); printf("\n++++++++++++++++++请选择查找方式++++++++++++++++++\n\n"); printf("\n"); printf("\n"); printf("\n请选择:"); scanf("%d",&j); gets(l); switch(j) { case1: PRINT(); break; case2: printf("\n---请输入车次---:"); gets(name1); break; case3: printf("\n---请输入终点---:"); gets(name2); break; case4: printf("\n---请输入起点---:"); gets(name3); break; case5: printf("\n---请输入终点---:"); gets(name41); printf("\n---请输入日期---:"); gets(name42); break; case6: break; default: WRONG(); break; } READ(); k=0; if(j==2) { for(i=0;i<n;i++) { if(strcmp(T[i].code,name1)==0) { printf("\n按车次查找列车信息成功!\n"); printf("\n===========================================================================\n"); printf(GeShi); break; } } for(i=0;i<n;i++) { if(strcmp(T[i].code,name1)==0) { printf(Print); k++; } } printf("===========================================================================\n"); printf("\n-->共查询到%d趟列车信息,请按任意键返回<--",k); gets(l); } if(j==3) { for(i=0;i<n;i++) { if(strcmp(T[i].ap,name2)==0) { printf("\n按终点查找列车信息成功!\n"); printf("\n===========================================================================\n"); printf(GeShi); break; } } for(i=0;i<n;i++) { if(strcmp(T[i].ap,name2)==0) { printf(Print); k++; } } printf("===========================================================================\n"); printf("\n-->共查询到%d趟列车信息,请按任意键返回<--",k); gets(l); } if(j==4) { for(i=0;i<n;i++) { if(strcmp(T[i].lp,name3)==0) { printf("\n按起点查找列车信息成功!\n"); printf("\n===========================================================================\n"); printf(GeShi); break; } } for(i=0;i<n;i++) { if(strcmp(T[i].lp,name3)==0) { printf(Print); k++; } } printf("===========================================================================\n"); printf("\n-->共查询到%d趟列车信息,请按任意键返回<--",k); gets(l); } if(j==5) { for(i=0;i<n;i++) { if(strcmp(T[i].ap,name41)==0&&strcmp(T[i].data,name42)==0) { printf("\n按终点和日期查找列车信息成功!\n"); printf("\n===========================================================================\n"); printf(GeShi); break; } } for(i=0;i<n;i++) { if(strcmp(T[i].ap,name41)==0&&strcmp(T[i].data,name42)==0) { printf(Print); k++; } } printf("===========================================================================\n"); printf("\n-->共查询到%d趟列车信息,请按任意键返回<--",k); gets(l); } do { system("cls"); printf("\n\n-->继续查找(1),返回主菜单(2)<--"); choice=getchar(); gets(l); if(choice!='1'&&choice!='2') WRONG(); }while(choice!='1'&&choice!='2'); }while(choice!='2');}///////////////////////////////////////////////////////////////////////////////////////统计模块voidSELECT(){ charname1[10];//终点 charname2[10];//起点 intt,k; charchoice; do { system("cls"); printf("\n\n====================欢迎进入统计火车车次界面====================\n"); printf("\n-|--|--|--|-请选择统计方式-|--|--|--|-\n\n"); printf("\n"); printf("\n"); printf("\n请选择:"); scanf("%d",&t); gets(l); switch(t) { case1: printf("请输入终点:"); gets(name1); break; case2: printf("请输入起点:"); gets(name2); break; default: WRONG(); break; } READ(); if(t==1) { k=0; for(i=0;i<n;i++) { if(strcmp(T[i].lp,na

温馨提示

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

最新文档

评论

0/150

提交评论