资源简介
任务:通过此系统可以实现如下功能:
1)、录入:
可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)
2)、查询:
可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);
可以输入起飞抵达城市,查询飞机航班情况;
3)、订票:(订票情况可以存在一个数据文件中,结构自己设定)
可以订票,如果该航班已经无票,可以提供相关可选择航班;
4)、退票: 可退票,退票后修改相关数据文件;
客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
5)、修改航班信息:
当航班信息改变可以修改航班数据文件
要求:
根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;
界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。
存储结构:学生自己根据系统功能要求自己设计。请在最后的上交资料中指明你用到的存储结构;
测试数据:要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明;
代码片段和文件信息
#include
#include
#include
#include
#define PS &(p->number)p->time_gop->time_top->place_gop->place_to&(p->price)&(p->discount)&(p->seat_total)&(p->seat_odd)
#define PP p->numberp->time_gop->time_top->place_gop->place_top->pricep->discountp->seat_totalp->seat_odd
#define CS p->name&(p->numb_id)&(p->amount_t)&(p->numb_p)
struct plane_inf{
int number;
char time_go[16];
char time_to[16];
char place_go[20];
char place_to[20];
int price;
float discount;
int seat_total;
int seat_odd;
struct plane_inf * next;
};/*航班信息*/
struct cust_inf{
char name[20];
int numb_id;
int amount_t;
int numb_p;
int numb_ord;
struct cust_inf * next;
};/*顾客信息*/
typedef struct plane_inf p_inf;
typedef struct cust_inf c_inf;
void luru();
void xiugai();
void chaxun();
void dingpiao();
void tuipiao();
int xg_hb(int numberint amount_tp_inf * p);
p_inf * read_p();
c_inf * read_c();
void write_p(p_inf *);
void write_c(c_inf *);
void free_p(p_inf *);
void free_c(c_inf *);
void main()
{
int choice;
int i=0;
do
{
printf(“**************航空订票系统**************\n\n“);
printf(“ 录入航班信息*********1\n\n“);
printf(“ 修改航班信息*********2\n\n“);
printf(“ 查询航班信息*********3\n\n“);
printf(“ 顾客订票*************4\n\n“);
printf(“ 顾客退票*************5\n\n“);
printf(“ 退出*****************0\n\n“);
printf(“****************************************\n“);
printf(“ 请选择“);
scanf(“%d“&choice);
system(“cls“);
switch(choice)
{
case 0:
exit(0);
case 1:
luru();
break;
case 2:
xiugai();
break;
case 3:
chaxun();
break;
case 4:
dingpiao();
break;
case 5:
tuipiao();
break;
default:
printf(“您的输入有误,请重新选择:\n\n“);
}
}while(choice!=0);
}
void luru()
{
char choice;
p_inf * p;
FILE * fp;
if((fp=fopen(“d:\\plane.dat““ab“))==NULL)
{
fp=fopen(“d:\\plane.dat““wb“);
}
else
;
do
{
printf(“请输入要录入的航班信息,各项内容之间以空格键或Tab键分开\n\n“);
printf(“航班号,起飞时间,抵达时间,始发地,目的地,票价,折扣情况,座位总数,剩余座位数\n“);
p=(p_inf *)malloc(sizeof(p_inf));
p->discount=10.0;
p->next=NULL;
fflush(stdin);
scanf(“%d%s%s%s%s%d%f%d%d“PS);
fwrite(psizeof(p_inf)1fp);
printf(“********************************************************************************“);
printf(“继续录入请输入Y,否则返回上一级菜单\n“);
fflush(stdin);
choice=getch();
}while(choice==‘Y‘);
fclose(fp);
}
void xiugai()
{
int number;
p_inf *p *head;
head=read_p();
printf(“请输入需要修改的航班号:“);
scanf(“%d“&number);
p=head;
while(p!=NULL)
{
if(p->number==number)
{
printf(“\n请输入要修改后的航班信息,各项内容之间以空格键或Tab键分开\n\n“);
printf(“航班号,起飞时间,抵达时间,始发地,目的地,票价,折扣情况,座位总数,剩余座位数\n“);
scanf(“%d%s%s%s%s%d%f%d%d“PS);
break;
}
p=p->next;
}
printf(“********************************************************************************“);
if(p!=NULL)
{
write_p(head);
printf(“您已成功修改%d号航班\n“p->number);
}
el
相关资源
- 数据结构课程设计大作业-全国交通咨
- 数据结构课程设计报告——在表达式
- 数据结构 迷宫 编码和译码 课设
- 用弗洛伊德算法实现求最短路径的交
- 数据结构试题(哈工大期末考试)
- 北京理工大学数据结构编程练习答案
- ACM_算法模板
- 最小生成树算法,用数据结构实现
- 武汉大学 薛超英《数据结构与算法》
- 北大MOOC课后题-数据结构-张铭
- 数据结构耿国华,高等教育出版社第
- 病人看病模拟程序队列的应用
- 数据结构及应用算法教程参考答案.
- 合肥工业大学数据结构试验六图
- 合肥工业大学数据结构试验五树和森
- 数据结构课程设计--统计成绩
- 二叉树的构造与遍历
- 数据结构的渡口调度管理
- 数据结构与算法考试复习试题和答案
- 数据结构6种排序方法
- 数据结构课程设计纸牌游戏
- 数据结构 joseph环 含源代码
- 数据结构课设报告之迷宫.docx
- 数据结构课程设计全部系统合集超市
- 中南民大数据结构-八皇后问题含实验
- 2017--山东大学数据结构实验报告,实
- 数据结构-校园导游图
- 数据结构课程设计(排序综合)
- 数据结构课程设计实验报告后缀表达
- 数据结构大作业+设计说明书
评论
共有 条评论