2022年C语言课程设计--火车票管理系统.pdf
《2022年C语言课程设计--火车票管理系统.pdf》由会员分享,可在线阅读,更多相关《2022年C语言课程设计--火车票管理系统.pdf(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、0 二、设计内容设计一个火车票务管理系统,用C语言实现。对该系统的要求如下:需求描述:1. 系统功能(1) 火车时刻信息录入。包括车次、日期、起点、终点、开车时间、到达时间、票价。数据存入数据文件hchsk.dat或hchsk.txt中。(2) 火车时刻信息查询。按照车次查询按终点查询按起点查询按终点和日期查询 (3)统计按终点统计每日的车次数按起点统计每日的车次数2. 系统主界面应有以下功能选项录入火车时刻信息查询火车时刻信息统计火车车次精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 24
2、页 - - - - - - - - - - 1 退出三、详细设计说明#include #include #include int MENU(); /菜单模块void INPUT(); /输入模块void SEARCH(); /查询模块void SELECT(); /统计模块void WRITE(); /文件记录模块void PRINT(); /打印模块void READ(); /文件读取模块void WRONG(); /纠错模块#define N 1000 /最大列车组数#define Print %s%13s%10s%10s%12s%15s%11sn,Ti.code,Ti.data,Ti.l
3、p,Ti.ap,Ti.lt,Ti.at,Ti.price /输出记录格式#define Wrong n ! ! ! ! ! ! ! ! ! ! ! 输入错误,请重新输入 ! ! ! ! ! ! ! ! ! ! ! n #define GeShi 车次日期起点终点开车时间到达时间票价n 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 24 页 - - - - - - - - - - 2 struct Train char code10; /车次char data10; /日期char lp10;
4、 /left place 起点char ap10; /arrive place 终点char lt10; /left time 开车时间char at10; /arrive time 到达时间char price10; / 票价TN; /* 全局变量 */ int i=0; /输入计数器int n=0; /合计计数器char l20; /纠错空间/主函数int main() int x; do x=MENU(); switch(x) 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 24 页 -
5、 - - - - - - - - - 3 case 1:INPUT(); break; case 2:SEARCH(); break; case 3:SELECT(); break; case 4: printf(n -); printf(n 正在退出 ,请按任意键退出); printf(nn ); printf(n -n ); break; default:WRONG(); break; while(x!=4); return 0; /菜单模块int MENU() int choice; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - -
6、- - - - - - - -第 4 页,共 24 页 - - - - - - - - - - 4 system(cls); printf(n -n); printf( -n); printf( - -n); printf( - 欢迎进入火车票务管理系统-n); printf( - -n); printf( -n); printf( -nn); printf( n - 请 输 入 选 项-n); printf( 1.录入火车时刻信息 n); printf( 2.查询火车时刻信息 n); printf( 3.统计火车车次 n); printf( 4.退出n); printf( -n); prin
7、tf( 请选择:); scanf(%d,&choice); gets(l); return choice; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 24 页 - - - - - - - - - - 5 /输入模块void INPUT() char ch; do system(cls); printf(nn = 欢迎进入录入火车时刻信息 界面=n); do printf(n 新建列车信息 ?(y/n) ); scanf(%c,&ch); gets(l); if(ch!=y&ch!=n)
8、WRONG (); while(ch!=y&ch!=n); if(ch=n) break; printf( -); printf(n 录入第 %d趟列车信息 n,n+1); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 24 页 - - - - - - - - - - 6 printf( 车次); gets(Ti.code); printf( 日期); gets(Ti.data); printf( 起点); gets(Ti.lp); printf( 终点); gets(Ti.ap); pri
9、ntf( 开车时间); gets(Ti.lt); printf( 到达时间); gets(Ti.at); printf( 票价); gets(Ti.price); n+; i+; while(iN); WRITE(); system(cls); printf(n); printf( -n); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 24 页 - - - - - - - - - - 7 printf( 系统记载的列车信息如下n); printf( -nn); PRINT(); /文件记录
10、模块void WRITE() FILE *fp,*fp1; if(fp=fopen(hchsk.txt,w)=NULL) printf( 无法创建文件 !nn); getchar(); return; if(fp1=fopen(N.txt,w)=NULL)/用于记录共几趟车 printf( 无法创建文件 !n); getchar(); return; for(i=0;in;i+) 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 24 页 - - - - - - - - - - 8 if(fwr
11、ite(&Ti,sizeof(struct Train),1,fp)=0) printf( 写入数据失败 !nn); fprintf(fp1,%d,n); fclose(fp); fclose(fp1); /文件读取模块void READ() FILE *fp,*fp1; if(fp=fopen(hchsk.txt,r)=NULL) printf( 无法打开文件 n); getchar(); return; if(fp1=fopen(N.txt,r)=NULL) printf( 无法打开文件 !nn); getchar(); return; 精品资料 - - - 欢迎下载 - - - - -
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 语言 课程设计 火车票 管理 系统
限制150内