《C语言 车票管理系统源程序.doc》由会员分享,可在线阅读,更多相关《C语言 车票管理系统源程序.doc(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、#include#include /*时间库函数*/#include /*调用系统函数*/#include /*串操作及内存操作函数*/ #include#include#define N 80 /*宏定义多条记录*/void maipiao(int s,int t); /*函数定义*/float times(int k);int hour(int k)switch(k)case 1:return 07;break;case 2:return 10;break;case 3:return 13;break; case 4:return 16;break;case 5:return 19;bre
2、ak;case 6:return 21;break; /*d到闽清一天的发车时间小时段*/case 7:return 07;break;case 8:return 11;break;case 9:return 15;break;case 10:return 19;break;case 11:return 23;break; /*d到长乐一天的发车时间小时段*/case 12:return 07;break;case 13:return 11;break;case 14:return 15;break;case 15:return 19;break;case 16:return 23;break
3、; /*d到连江一天的发车时间小时段*/case 17:return 07;break;case 18:return 11;break;case 19:return 16;break;case 20:return 20;break; /*d到永泰一天的发车时间小时段*/ case 21:return 07;break;case 22:return 12;break;case 23:return 17;break;case 24:return 22;break; /*d到福清一天的发车时间小时段*/case 25:return 07;break;case 26:return 14;break;c
4、ase 27:return 19;break;case 28:return 22;break; /*d到罗源一天的发车时间小时段*/ /*开车时间段*/int minute(int k)switch(k)case 1:return 00;break;case 2:return 00;break;case 3:return 00;break; case 4:return 00;break;case 5:return 00;break;case 6:return 00;break; /*d到闽清一天的发车时间分钟段*/case 7:return 00;break;case 8:return 00;
5、break;case 9:return 00;break;case 10:return 00;break;case 11:return 00;break; /*d到长乐一天的发车时间分钟段*/case 12:return 00;break;case 13:return 00;break;case 14:return 00;break;case 15:return 00;break;case 16:return 00;break; /*d到连江一天的发车时间分钟段*/case 17:return 00;break;case 18:return 30;break;case 19:return 00
6、;break;case 20:return 30;break; /*d到永泰一天的发车时间分钟段*/ case 21:return 00;break;case 22:return 30;break;case 23:return 00;break;case 24:return 30;break; /*d到福清一天的发车时间分钟段*/case 25:return 30;break;case 26:return 00;break;case 27:return 30;break;case 28:return 30;break; /*d到罗源一天的发车时间分钟段*/ /*开车时间段*/void wap(
7、int k)switch(k)case 1: printf(闽清);break;case 2: printf(长乐);break;case 3: printf(连江);break;case 4: printf(永泰);break;case 5: printf(福清);break;case 6: printf(罗源);break; /*输入终点站的函数*/int shijian() struct tm *ptr; time_t lt; lt =time(NULL); ptr=gmtime(<); printf(ctime(<); return 0; /*输出当前时间的函数*/float
8、times(int k)float t; if(k=1)t=1.5;if(k=2)t=3.0;if(k=3|k=4)t=4.0;if(k=5|k=6)t=4.5;return t; /*输入行车时间的函数*/int number(int k)int f;if(k=1|k=2)f=30;if(k=3|k=4)f=40;if(k=5|k=6)f=45;return f; /*输入最大载客量的函数*/int nownumber(int k,int i)int n=0;char filename10;switch(i)case 1:strcpy(filename,qiu1.txt);break;cas
9、e 2:strcpy(filename,qiu2.txt);break;case 3:strcpy(filename,qiu3.txt);break; case 4:strcpy(filename,qiu4.txt);break;case 5:strcpy(filename,qiu5.txt);break;case 6:strcpy(filename,qiu6.txt);break; case 7:strcpy(filename,qiu7.txt);break;case 8:strcpy(filename,qiu8.txt);break;case 9:strcpy(filename,qiu9.
10、txt);break;case 10:strcpy(filename,qiu10.txt);break;case 11:strcpy(filename,qiu11.txt);break; case 12:strcpy(filename,qiu12.txt);break;case 13:strcpy(filename,qiu13.txt);break;case 14:strcpy(filename,qiu14.txt);break;case 15:strcpy(filename,qiu15.txt);break;case 16:strcpy(filename,qiu16.txt);break;c
11、ase 17:strcpy(filename,qiu17.txt);break;case 18:strcpy(filename,qiu18.txt);break;case 19:strcpy(filename,qiu19.txt);break;case 20:strcpy(filename,qiu20.txt);break; case 21:strcpy(filename,qiu21.txt);break;case 22:strcpy(filename,qiu22.txt);break;case 23:strcpy(filename,qiu23.txt);break;case 24:strcp
12、y(filename,qiu24.txt);break; case 25:strcpy(filename,qiu25.txt);break;case 26:strcpy(filename,qiu26.txt);break;case 27:strcpy(filename,qiu27.txt);break;case 28:strcpy(filename,qiu28.txt);break; case 29:strcpy(filename,qiu29.txt);break;FILE *fp;if(fp=fopen(filename,rt+)=NULL)printf(cannot open file,s
13、trike any key exit!);exit(1);fscanf(fp,%d,&n);n=n+k; rewind(fp);fprintf(fp,%d,n); /将输入数组里面的数据写到文本里fclose(fp);return n; /*现在已定票人数*/int tangci(int k)int x;switch(k)case 1:x=6;break;case 2:x=5;break;case 3:x=5;break;case 4:x=4;break;case 5:x=4;break;case 6:x=4;break;default:x=0;break;return x; /*确定每个地方
14、一天行车趟次的函数*/void jiemian()printf(*n);printf(*欢迎来到车票查询系统*);printf(n);printf(| a: 进入班次一览 |n);printf(| b: 进入查询班次 |n);printf(| c: 进入终点站查询 |n);printf(| d: 售票 |n);printf(| e: 退票 |n);printf(| f: 增加班次 |n);printf(*n);printf(n请选择(a-e):); /*界面函数*/void banci(int s,int t) system(cls); /*清屏*/ int i,flag=1,m,k=1,o=
15、0; /*定义一些要用的数据*/ printf( 车票管理系统 ); printf(n); printf(班次 发车时间 起点站 终点站 行车时间 额定数量 已订票人数 状态); printf(n); for(i=1;i=10) printf(%d ,i);else printf(%d ,i);if(hour(i)=10) printf(%d ,hour(i); /*进行页面的调整,美观*/else printf(%d%d ,o,hour(i);if(minute(i)=10)printf(%d,minute(i);elseprintf(%d%d,o,minute(i);printf( 闽侯
16、);wap(k);printf( %lf ,times(k);printf(%d ,number(k); printf(%d ,nownumber(0,i);if(shour(i)printf(未发出);else if(t6)break; /*班次一览*/void chaxun1(int s,int t)system(cls);int i,k=0,n,o=0; printf(n请输入要查询的班次i:); scanf(%d,&i);n=i;while(n0)k+;n=n-tangci(k); printf(班次 发车时间 起点站 终点站 行车时间 额定数量 已订票人数 状态n); if(i=10
17、) printf(%d ,i);else printf(%d ,i);if(hour(i)=10) printf(%d ,hour(i);else printf(%d%d ,o,hour(i);if(minute(i)=10)printf(%d,minute(i);elseprintf(%d%d,o,minute(i); printf( 闽侯 );wap(k);printf( %f ,times(k);printf(%d ,number(k);printf(%d ,nownumber(0,i);if(shour(i)printf(未发出);else if(t=10) printf(%d ,i)
18、;else printf(%d ,i);if(hour(i)=10) printf(%d ,hour(i);else printf(%d%d ,o,hour(i);if(minute(i)=10)printf(%d,minute(i);elseprintf(%d%d,o,minute(i);printf( 闽侯 );wap(k);printf( %f ,times(k);printf(%d ,number(k); printf(%d ,nownumber(0,i);if(shour(i)printf(未发出);else if(tminute(i)&s=hour(i)printf(未发出);el
19、seprintf(已发出);printf(n); printf(返回重新查询:3,输入其他返回:n); scanf(%d,&n); /*按班次查询*/void chaxun2(int s,int t) system(cls);int i,k=1,m,j,l=0,o=0;printf(请输入你要查询的终点站:n);printf(1:闽清.2:长乐.3:连江.4:永泰.5:福清.6:罗源.n);scanf(%d,&m);for(j=1;jm;j+)k=k+tangci(j);for(j=1;j=m;j+)l=l+tangci(j);printf(班次 发车时间 起点站 终点站 行车时间 额定数量
20、已订票人数 状态n); for(i=k;i=10) printf(%d ,i); else printf(%d ,i); if(hour(i)=10) printf(%d ,hour(i); else printf(%d%d ,o,hour(i); if(minute(i)=10)printf(%d,minute(i); elseprintf(%d%d,o,minute(i);printf( 闽侯 );wap(m);printf( %f ,times(m);printf(%d ,number(m); printf(%d ,nownumber(0,i);if(shour(i)printf(未发出
21、);else if(tminute(i)&s=hour(i)printf(未发出);elseprintf(已发出);printf(n);printf(重新查询请输入11,直接买票请输入12,输入其他退出!:n);scanf(%d,&m);while(m=11)k=1;l=0;printf(请输入你要查询的终点站:n); printf(1:闽清.2:长乐.3:连江.4:永泰.5:福清.6:罗源.n); scanf(%d,&m); for(j=1;jm;j+) k=k+tangci(j); for(j=1;j=m;j+) l=l+tangci(j);printf(班次 发车时间 起点站 终点站 行
22、车时间 额定数量 已订票人数 状态n); for(i=k;i=10) printf(%d ,i); else printf(%d ,i); if(hour(i)=10) printf(%d ,hour(i); else printf(%d%d ,o,hour(i); if(minute(i)=10) printf(%d,minute(i); else printf(%d%d,o,minute(i); printf( 闽侯 ); wap(m); printf( %f ,times(m); printf(%d ,number(m); printf(%d ,nownumber(0,i);if(sho
23、ur(i) printf(未发出); else if(t0)k+;n=n-tangci(k);printf(班次 发车时间 起点站 终点站 行车时间 额定数量 已订票人数 状态n);if(i=10) printf(%d ,i);elseprintf(%d ,i);if(hour(i)=10) printf(%d ,hour(i);else printf(%d%d ,o,hour(i);if(minute(i)=10) printf(%d,minute(i);else printf(%d%d,o,minute(i);printf( 闽侯 );wap(k);printf( %f ,times(k)
24、;printf(%d ,number(k);printf(%d ,nownumber(0,i);if(shour(i)printf(未发出);log=1; else if(t=nownumber(0,i)&log=1)printf(请输入你要定的票的数量m:n);scanf(%d,&m);nownumber(m,i);while(number(k)0) k+; n=n-tangci(k); if(i=10) printf(%d ,i); else printf(%d ,i); if(hour(i)=10) printf(%d ,hour(i); else printf(%d%d ,o,hour
25、(i); if(minute(i)=10) printf(%d,minute(i); else printf(%d%d,o,minute(i); printf( 闽侯 ); wap(i); printf( %f ,times(k); printf(%d ,number(k); printf(%d ,nownumber(0,i);if(shour(i) printf(未发出); log=1; else if(tminute(i)&s=hour(i) printf(未发出); log=1; else printf(已发出); log=0; printf(n);printf(你已成功订票!);whi
26、le(number(k)0) k+; n=n-tangci(k); printf(班次 发车时间 起点站 终点站 行车时间 额定数量 已订票人数 状态n); if(i=10) printf(%d ,i); else printf(%d ,i); if(hour(i)=10) printf(%d ,hour(i); else printf(%d%d ,o,hour(i); if(minute(i)=10) printf(%d,minute(i); else printf(%d%d,o,minute(i); printf( 闽侯 ); wap(k); printf( %f ,times(k); printf(%d ,number(k); printf(%d ,nownumber(0,i); if(shour(i) printf(未发出); log=1; else if(tminute(i)&s=hour(i) printf(未发出); log=1;