• 大小: 370KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-02-01
  • 语言: C/C++
  • 标签: 飞机订票  c++  

资源简介

飞机订票系统,可以实现订票、退票、查看航班信息、查看已订票的乘客信息等功能。 各模块的要求: (1)录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定) (2)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);输入起飞抵达城市,查询飞机航班情况。 (3)订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班。 (4)退票: 可退票,退票后修改相关数据文件。; (5)客户资料包括:姓名,证件号,订票数量及航班情况,订单要有编号。 (6)修改航班信息:当航班信息改变时,可以修改航班数据文件。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;
#define MAXSIZE 9
 /*定义航线量的最大值*/

typedef struct ads{
     char Enternum[7];
 char name[100];
     char sex[2];
     int  age;
     char key[10];
}ad;

typedef struct cms{
    char EnterNum[8];    //登入账号
    char name[100];      //姓名
    char sex[2];         //性别
    int age;             //年龄
    char key[10];        //登入密码
}com;

typedef struct numbers{
    int comnum;//用户人数
int adnum;  //管理员人数;
}number;

typedef struct IDNode
{
char ID[18];
struct IDNode *next;
}IDList;

typedef struct wat_ros

char name[10];/*姓名*/
char ID[18];/*身份证号*/
int req_amt;/*订票量*/
struct wat_ros *next;
}qnode*qptr;

typedef struct pqueue
{
qptr front;/*等候替补客户名单域的头指针*/
qptr rear;/*等候替补客户名单域的属指针*/
}linkqueue;

typedef struct ord_ros
{  
char name[10];/*客户姓名*/
char ID[18];/*身份证号*/
int ord_amt;/*订票量*/
int grade;/*舱位等级*/
struct ord_ros *next;
}linklist;

struct airline
{
char ter_name[10];/*终点站名 */
    char air_num[10];/*航班号*/
    char plane_num[10];/*飞机号*/
    char date[7];/*飞行日期(星期几)*/
    int tkt_amt;/*乘员定额*/
    int tkt_sur;/*余票量*/
    linklist *order;
/*乘员名单域,指向乘员名单链表的头指针*/
    linkqueue wait;
/*等候替补的客户名单域,分别指向排队等候名单队头队尾的指针*/
}lineinfo;

struct airline *start;
struct airline air[MAXSIZE];

void insert()
{    
char NG;
fstream file;
file.open(“airline.txt“ios::trunc);
    int i=0;
do{
cout<<“请输入航班“< cout<<“请输入终点站名字:“< cin>>(air+i)->ter_name;
cout<<“请输入航班号:“< cin>>(air+i)->air_num;
    cout<<“请输入飞机号:“< cin>>(air+i)->plane_num;
cout<<“请输入飞行日期:“<        cin>>(air+i)->date;
cout<<“请输入乘员定额:“< cin>>(air+i)->tkt_amt;
cout<<“请输入余票量:“< cin>>(air+i)->tkt_sur;
//文件操作
//写入!
file<<(air+i)->ter_name<<“    “<<(air+i)->air_num<<“    “<<(air+i)->plane_num<<“    “<<(air+i)->date
<<“    “<<(air+i)->tkt_amt<<“    “<<(air+i)->tkt_sur< /*cin>>(air+i)->ter_name>>(air+i)->air_num>>(air+i)->plane_num>>(air+i)->date>>(air+i)->tkt_amt>>(air+i)->tkt_sur;*/
printf(“还需要继续添加吗?(Yy/Nn)\n“);
cin>>NG;
}while((NG==‘Y‘||NG==‘y‘)&&(i++<=MAXSIZE));
}



void display(struct airline *info)
/*打印每条航线的基本信息*/
{
 printf(“│ %-6.6s │ %-6.6s │  %-6.6s│  %-6.6s  │   %-6.0d │   %-6.0d │\n“info->ter_nameinfo->air_numinfo->plane_numinfo->dateinfo->tkt_amtinfo->tkt_sur);
}
void list()
/*打印全部航线信息*/

struct airline *info;
int i=0;
info=air;
cout<<“┌────┬────┬────┬─────┬─────┬─────┐“<    cout<<“│终点站名│ 航班号 │飞机号  │飞行日期  │ 乘员定额 │  余票量  │“<    cout<<“├────┼────┼────┼─────┼─────┼─────┤“< while(i {
display(info);
if(i!=MAXSIZE-1)
printf(“├────┼────┼────┼─────┼─────┼─────┤\n“);
info++;
i++;
}
cout<<“└────┴────┴────┴─────┴─────┴─────┘\n“;
printf(“\n\n“);
}



void searc

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     790528  2010-11-16 14:55  飞机订票系统\2010暑期实训报告书.doc

     文件      27995  2010-11-16 14:54  飞机订票系统\dfsd11333.cpp

     目录          0  2010-11-16 14:55  飞机订票系统

----------- ---------  ---------- -----  ----

               818523                    3


评论

共有 条评论