人人范文网 范文大全

航空售票管理系统

发布时间:2020-03-03 00:47:53 来源:范文大全 收藏本文 下载本文 手机版

#include #include #include #include #include #define N 100 using namespace std;

typedef struct node//定义信息结构体 {

char num[10];// 航班号

int hour;//起飞时间小时

int minitues;//起飞时间分钟

char start[10];//起始

char end[10];//终点

float prize;//经济舱票价

int last;//剩余座位 }FLIGHT;

typedef struct Order//订单信息 {

char name[10];//乘客姓名

char num[10];//航班号

int count;//订票数量 }Order;

cla flight//定义类 {

private: FLIGHT stu[N];//每个元素对应一条信息

Order psg[N];//订单

int len;//航班总数

int lenp;//订票者总数 public:

flight();

~flight(); void input();//录入信息

void show();//浏览

void sall();//售票

void back();//退票

void search(); // 信息查询

void search2(); // 信息查询(起点终点)

char menu();//菜单

};

flight stud;

char filename[]=\"flight.txt\";

flight::flight(){}//构造函数 flight::~flight(){}//析构函数

bool CheckTime(int h1,int m1,int h2,int m2)//判断两个时间前后

{ if(h1

return true; else if(h1==h2) {

if(m1

return true;

else

return false; } else

return false; } void flight::show()//浏览 {

system(\"cls\");//清屏

cout

所有航班信息如下:\"

起飞时间

起点

终点

经济舱票价

剩余座位

备注\"

for(int i=0;i

printf(\"%-10s%-2.2d:%-2.2d

%-10s%-10s%-12.2f%-10d\",stu[i].num,stu[i].hour,stu[i].minitues,stu[i].start,stu[i].end,stu[i].prize,stu[i].last);

time_t t;

struct tm *tm;

t=time(NULL);//获取当前系统时间

tm=localtime(&t);

if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)//如果起飞时间在当前时间之前 输出此次航班已发出

cout

else

cout

} cout

void flight::back()//退票 {

char name[20];

char s[20];

system(\"cls\");//清屏

cout>s;

for(int i=0;i

if(strcmp(stud.stu[i].num,s)==0)

break;//存在 结束循环

if(i==stud.len)//这二者相等说明查找完所有信息也没找到输入信息,说明输入航班编号不存在

{

cout

system(\"pause\");//任意键继续

return; }

time_t t;

struct tm *tm;

t=time(NULL);//获取当前系统时间

tm=localtime(&t); if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)

{

cout

system(\"pause\");//任意键继续

return; } int j=i;

cout>name; for(i=0;i

if(strcmp(stud.psg[i].name,name)==0 && strcmp(stud.psg[i].num,s)==0)//查询这个名字是否相同

{

stud.stu[j].last+=stud.psg[i].count;//退票

stud.psg[i]=stud.psg[stud.lenp-1];///删除这个订单

stud.lenp--;//订单数减一

cout

system(\"pause\");//任意键继续

return;

} } cout

system(\"pause\");//任意键继续

}

void flight::sall()//售票 {

char s[20];

system(\"cls\");//清屏

cout>s;

for(int i=0;i

if(strcmp(stud.stu[i].num,s)==0)

break;//存在 结束循环

if(i==stud.len)//这二者相等说明查找完所有信息也没找到输入信息,说明输入航班编号不存在

{

cout

system(\"pause\");//任意键继续

return; }

if(stud.stu[i].last

{

cout

system(\"pause\");//任意键继续

return; }

time_t t;

struct tm *tm;

t=time(NULL);//获取当前系统时间

tm=localtime(&t); if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)

{

cout

system(\"pause\");//任意键继续

return; }

int j=i; i=stud.lenp; strcpy(stud.psg[i].num,stud.stu[i].num); cout>stud.psg[i].count;

while(stud.psg[i].count>stud.stu[i].last) {

cout

cin>>stud.psg[i].count;

} cout>stud.psg[i].name;

stud.stu[j].last-=stud.psg[i].count;//剩余票数

stud.lenp++; cout

void flight::input()//录入信息 {

system(\"cls\");//清屏

for(int i=stud.len;i

{

cout

cin>>stud.stu[i].num;

cout

char ch;

cin>>stud.stu[i].hour>>ch>>stud.stu[i].minitues;

cout

cin>>stud.stu[i].start;

cout

cin>>stud.stu[i].end;

cout

cin>>stud.stu[i].prize;

cout

cin>>stud.stu[i].last;

stud.len++;//个数加1

cout

while(1)

{

cin>>ch;

if(ch==\'y\' || ch==\'Y\' || ch==\'n\' || ch==\'N\')

break;

else

cout

}

if(ch==\'n\' || ch==\'N\')

break;

} }

void flight::search() // 信息查询 {

char s[20];

system(\"cls\");//清屏

cout>s;

for(int i=0;i

if(strcmp(stud.stu[i].num,s)==0)

break;//存在 结束循环

if(i==stud.len)//这二者相等说明查找完所有信息也没找到输入信息,说明输入航班编号不存在

{

cout

system(\"pause\");//任意键继续

return; }

cout

查询结果如下:\"

起飞时间

起点

终点

经济舱票价

剩余座位

备注\"

printf(\"%-10s%-2.2d:%-2.2d

%-10s%-10s%-12.2f%-10d\",stu[i].num,stu[i].hour,stu[i].minitues,stu[i].start,stu[i].end,stu[i].prize,stu[i].last);

time_t t;

struct tm *tm;

t=time(NULL);//获取当前系统时间

tm=localtime(&t);

if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)//如果起飞时间在当前时间之前 输出此次航班已发出

cout

else

cout

cout

void flight::search2() // 信息查询(按线路) {

char s1[20],s2[20];

system(\"cls\");//清屏

cout>s1;

cout>s2;

for(int i=0;i

if(strcmp(stud.stu[i].start,s1)==0 && strcmp(stud.stu[i].end,s2)==0)

break;//存在 结束循环

if(i==stud.len)//这二者相等说明查找完所有信息也没找到输入信息,说明输入航班编号不存在

{

cout

system(\"pause\");//任意键继续

return; }

cout

查询结果如下:\"

起飞时间

起点

终点

经济舱票价

剩余座位

备注\"

for( i=0;i

if(strcmp(stud.stu[i].start,s1)==0 && strcmp(stud.stu[i].end,s2)==0)

{

printf(\"%-10s%-2.2d:%-2.2d

%-10s%-10s%-12.2f%-10d\",stu[i].num,stu[i].hour,stu[i].minitues,stu[i].start,stu[i].end,stu[i].prize,stu[i].last);

time_t t;

struct tm *tm;

t=time(NULL);//获取当前系统时间

tm=localtime(&t);

if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)//如果起飞时间在当前时间之前 输出此次航班已发出

cout

else

cout

} cout

char flight::menu()//菜单 { char c;

system(\"cls\");//清屏

cout

╔═══════════════════════════╗\\n\"; cout

1、录入航班信息

║\\n\";

cout

╠═══════════════════════════╣\\n\"; cout

2、浏览航班信息

║\\n\"; cout

╠═══════════════════════════╣\\n\";

cout

3、查询路线(按编号)

║\\n\";

cout

╠═══════════════════════════╣\\n\"; cout

4、查询路线(按线路)

║\\n\";

cout

╠═══════════════════════════╣\\n\"; cout

5、售票

║\\n\";

cout

╠═══════════════════════════╣\\n\"; cout

6、退票

║\\n\";

cout

╠═══════════════════════════╣\\n\"; cout

0、退出系统

║\\n\";

cout

╚═══════════════════════════╝\\n\"; cout

请选择:\";

cin>>c;

return c; }

int main() {

while(1)

{

char ch;

ch=stud.menu();//获取选择

switch(ch)

{

case \'1\': stud.input(); break;//录入航班信息

case \'2\': stud.show(); break;//浏览航班信息

case \'3\': stud.search(); break;// 查询路线

case \'4\': stud.search2(); break;// 查询路线(按线路)

case \'5\': stud.sall(); break;// 售票

case \'6\': stud.back();

break;// 退票

case \'0\': exit(0);//退出

}

}

return 0; }

航空售票系统系统实施报告

航空售票系统数据库分析表

国际国内航空售票系统代理加盟协议

航空售票合作协议

车站售票管理系统心得体会

铁路售票系统

火车票售票系统

航空售票ETERM操作指令

铁路售票管理系统项目背景

售票系统应急预案

航空售票管理系统
《航空售票管理系统.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档