飞机票务管理系统 联系客服

发布时间 : 星期日 文章飞机票务管理系统更新完毕开始阅读

5

三 设计概要

⑴ 程序概要图

系统中主要函数及功能 信息查询函数 makenull_information() makenull_wait() list_information() plane_information() 查询机票及等候排队信息 信息输入函数 book() add_information() add_wait() 输入订票及排队信息 信息输出函数 list_piao() show_wait() write_to_file() 输出机票及排队信息 信息修改函数 search_delete() 查找及对信息作出修改 图1程序概要

⑵ 主要数据结构[2][3][4]

#include #include #include #include

#define m 4 #define n 5 struct node {

char name[21]; char id[21]; char phone[8];

6

int seat,plane,date; node *next,*pre; };

struct wait {

char name[21]; char id[21]; char phone[13];

int seat,plane,date,count; wait *next,*pre; };

struct piao {

int seat[n+1]; };

⑶ 课程设计所用方法及原理

将订票人输入的信息写入文件,同时系统记录这一信息并对机票信息作出修改,当其他人订票或查询时,输出修改后的信息,当票已被预定完时,输出等候建议。 主要利用了文件的各种操作[1],指针的各项应用等知识[2]。

四 详细设计

⑴ 所需软件环境

Windows 操作系统下的Microsoft Visual C++6.0软件环境

⑵ 部分程序程序源代码

void makenull(); //赵雷 void makenull_piao();///赵雷

void makenull_information();//赵雷 void makenull_wait();//赵雷

void list_menu();//孔旭东,main函数 void show_wait();//孔旭东 void list_piao();//张树建

void list_information();//张树建

void plane_information(node *head);//范林春 void book();//范林春

void add_information(node *head,int x,int y);//杨涛

7

void add_wait(int x,int y);//杨涛 void search_delete(int x);//牛绍海 bool comp(node *x,node*y);//牛绍海 void write_to_file();//牛绍海

////////////////////////////////////////////////////////////////////////////////////////////// node *head1,*head2,*head3,*q; wait *wait_head,*wait_end; piao a[m]; void main() { char choose; makenull(); do{ if (choose!='6') list_menu();

printf(\请输入您的选择: \ scanf(\ switch(choose){

case '0' : show_wait();break;

case '1' : {list_piao();book();}break; case '2' : search_delete(1);break; case '3' : list_piao();break;

case '4' : list_information();break; case '5' : search_delete(0);break; default : break; }

}while(choose!='6'); printf(\退出程序\\n\}

void makenull() {

makenull_piao();//票务信息

makenull_information();//客户信息 makenull_wait();//等候人员信息 }

void list_menu() { printf(\

printf(\ 菜单 \\n\ printf(\ ************************\\n\ printf(\ * 0 . 查看排队情况 *\\n\ printf(\ * 1 . 订票 *\\n\ printf(\ * 2 . 退票 *\\n\ printf(\ * 3 . 查看剩余票 *\\n\ printf(\ * 4 . 查看飞机信息 *\\n\

8

printf(\ * 5 . 查看乘客信息 *\\n\ printf(\ * 6 . 退出 *\\n\ printf(\ ************************\\n\ printf(\}

void makenull_piao()//机票信息的文件建立 {

FILE *fp; int i;

if((fp=fopen(\ {

fp=fopen(\ for (i=1;i<=m-1;i++)

fwrite(&a[i],sizeof(piao),1,fp); fclose(fp);

fp=fopen(\ }

for(i=1;i<=m-1;i++)

fread(&a[i],sizeof(piao),1,fp); fclose(fp); }

void makenull_information()//订票人员信息的文件建立 {

node *r; FILE *fp; int i,j,sum;

sum=a[1].seat[0]+a[2].seat[0]+a[3].seat[0]; fp=fopen(\ head1=new node; head2=new node; head3=new node; head1->pre=NULL; head1->next=NULL; head2->pre=NULL; head2->next=NULL; head3->pre=NULL; head3->next=NULL; q=head1;

for(i=1;i<=sum;i++) {

j=0;

r=new node;

fread(r,sizeof(node),1,fp);