数据结构课程设计

发布 2022-10-01 21:53:28 阅读 5861

航空订票系统。

一、设计目的:

编写一个航空订票系统,可以在系统中录入并修改各个航班的具体情况,帮助乘客准确的查询个航班的最新信息(包括航班号、航班的起始时间和地点。票价)和各个项目业务的及时办理(包括订票、退票等)。

二、任务:航空客运定票的业务活动包括:查询航线、客票预定和办理退票等。试设计一个航空客运定票系统,以使上述业务可以借助计算机来完成。

三、功能要求:

1) 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具。

体数据自定)

2) 查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵。

达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;

3) 订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果。

该航班已经无票,可以提供相关可选择航班;

4) 退票: 可退票,退票后修改相关数据文件;

5) 客户资料:有姓名,证件号,订票数量及航班情况,订单要有编号;

6) 修改航班信息:当航班信息改变可以修改航班数据文件。

四、设计程序:

#include<>

#include<>

#include<>

#define n 100//最大容量。

typedef struct flight//航班信息。

char flightnumber[6];/航班号。

char splace[10];/起始地。

char dplace[10];/目的地。

char stime[5];/起飞时间。

char etime[5];/降落时间。

int price;//票价。

int remnantseat;//剩余座位数。

flight;

typedef struct order//订单信息。

int ordernumber;//订单编号。

char pname[10];/乘客姓名。

char id[20];/身份证号。

char flightnumber[6];/航班号。

int num;//订票数量。

order;

flight fl[n];

order od[n];

int i,j;//两个常用角标变量

int lenf=0;//航班数

int leno=0;//订单数

char ch;//获取用户选择的变量。

char filenamef=航班文件名。

char filenameo=订单文件名。

void s**e()/保存信息。

file *fp;

if((fp=fopen(filenamef,"w"))null)//打开文件保存航班信息。

fclose(fp);/关闭文件。

if((fp=fopen(filenameo,"w"))null)//打开文件保存订单信息。

fclose(fp);/关闭文件。

void load()/读取信息。

file *fp;

if((fp=fopen(filenamef,"r"))null)//打开文件读取航班信息。

if((fp=fopen(filenameo,"r"))null)//打开文件读订单信息。

int check(char s)检查是否重复。

int g=0;

for(;g if(strcmp(fl[g].flightnumber,s)==0 &&g!=i)//对比是否相同相同就说明重复了。

return g;//表示重复了。

return -1;//遍历了整个数组都没发现重复的表示没有重复。

void input()/录入信息。

system("cls");清屏。

for(i=lenf;i

printf("请输入下列信息:");

printf("出发地:")

gets(fl[i].splace);

printf("目的地:")

gets(fl[i].dplace);

printf("起飞时间:")

gets(fl[i].stime);

printf("降落时间:")

gets(fl[i].etime);

printf("票价:")

scanf("%d",&fl[i].price);

printf("剩余座位数:")

scanf("%d",&fl[i].remnantseat);

getchar();消除回车。

lenf++;航班数加1

printf("航班信息录入完成! 是否继续录入下一列航班信息?(y/n):"

while(1)

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

break;

s**e();保存

void modify()/修改信息。

char s[20];

system("cls");清屏。

printf("请输入要修改的航班号:")

gets(s);

for(i=0;i if(strcmp(fl[i].flightnumber,s)==0)

break;//存在结束循环。

if(i==lenf)

printf("请输入新的航班号:")

gets(fl[i].flightnumber);

while(check(fl[i].flightnumber)==1)//检查是否重复。

printf("请更新下列信息:");

printf("出发地:")

gets(fl[i].splace);

printf("目的地:")

gets(fl[i].dplace);

printf("起飞时间:")

gets(fl[i].stime);

printf("降落时间:")

gets(fl[i].etime);

printf("票价:")

scanf("%d",&fl[i].price);

printf("剩余座位数:")

scanf("%d",&fl[i].remnantseat);

getchar();消除回车

s**e();保存

printf("修改成功!");

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

void book() 订票

system("cls");清屏。

i=leno;

printf("请输入您的姓名:")

数据结构课程设计

课程设计说明书 题目哈夫曼编码问题的设计和实现。课程名称数据结构课程设计。院 系 部 中心。专业。班级。学生姓名。学号。设计地点。指导教师。设计起止时间 2008 年6月 2日至 2008 年 6月 6 日。目录。1 问题描述 2 1.1 题目内容 2 1.2 基本要求 2 1.3 测试数据 2 2...

数据结构课程设计

数据结构 课程设计。实验报告。学院 信息工程学院。班级 姓名 学号 指导老师 题目2 一元多项式的计算。1 实验目的。1 掌握链表的灵活运用 2 学习链表初始化和建立一个新的链表 3 知道怎样去实现链表删除结点操作与插入结点 4 理解链表的基本操作 包括数据域数据的相加 并能灵活运用。2 实验内容。...

数据结构课程设计

班级 信计 1102 姓名 李娜娜。学号 1108060209 设计日期 2013.07.15 西安科技大学计算机学院 1.实验题目 编制一个演绎扫雷游戏的程序。2.问题描述。做一个n x m的扫雷游戏,每个方格包含两种状态 关闭 closed 和打开 opened 初始化时每个方格都是关闭的,一个...