C语言程序设计航班管理系统Word下载.docx

上传人:b****1 文档编号:15392061 上传时间:2022-10-29 格式:DOCX 页数:19 大小:157.88KB
下载 相关 举报
C语言程序设计航班管理系统Word下载.docx_第1页
第1页 / 共19页
C语言程序设计航班管理系统Word下载.docx_第2页
第2页 / 共19页
C语言程序设计航班管理系统Word下载.docx_第3页
第3页 / 共19页
C语言程序设计航班管理系统Word下载.docx_第4页
第4页 / 共19页
C语言程序设计航班管理系统Word下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

C语言程序设计航班管理系统Word下载.docx

《C语言程序设计航班管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《C语言程序设计航班管理系统Word下载.docx(19页珍藏版)》请在冰豆网上搜索。

C语言程序设计航班管理系统Word下载.docx

输入航班信息模块,完成航班信息的录入。

航班信息的录入前,录入系统先完成新建文件,检测文件是否存在的功能。

检测完毕,采用循环的输入流程,以检测文件是否终止为循环的判定条件;

输入信息时,以检测编号判断输入的信息与文件中的信息是否有冲突,防止输入的信息存在冲突;

把航班信息一一输入后,判断其有没有存入文件中。

排序航班信息模块,完成航班信息中的价格排序,便于筛选信息结果的查看,排序是利用冒泡排序法,按照价格从高到低编排。

查询航班信息模块,根据输入的航班编号,查询航班编号的信息,。

其过程中,首先是对输入的信息判断,判断输入的信息无误后再查询。

筛选航班信息模块,筛选模板分为四种不同条件的筛选,分别是起点站、到达站、起点时间、到达时间。

利用字符串函数strcmp比较输入的筛选条件与文件中字符串是否一致为判断,利用循环结构把筛选条件与有效字符串一一作比较。

3系统设计

3.1主要结构体

航班编号、起飞点、到达点、班期、起飞时间、达到时间、型号、价格

structfly

{

intno;

/*航班号*/

charstartpoint[M];

/*起飞点*/

charfinalpoint[M];

/*到达点*/

intbanqi;

/*班期*/

charstartime[M];

/*起飞时机*/

charfinaltime[M];

/*到达时间*/

chartipe[M];

/*型号*/

floatprice;

/*价格*/

};

3.2主要功能函数

voidin();

/*航班信息输入系统*/

voidorder();

/*航班价格排序系统*/

voidsearch();

/*航班信息查询系统*/

voidmenu();

/*信息展现函数*/

voidstartpoint();

/*起点站筛选系统*/

voidfinalpoint();

/*达到站筛选系统*/

voidstartime();

/*起点时间筛选系统*/

voidfinaltime();

/*到达时间筛选系统*/

3.3关键函数的流程图

数字6,按到达时间筛选航班信息

数字5,按起点时间筛选航班信息

数字4,按到达站筛选航班信息

数字1,输入航班信息

数字2,查询航班信息

数字3,按起点站筛选航班信息

4系统调试

1、航班信息的输入

2、输入航班号,对航班信息进行查找

3、输入到达站,对航班信息进行筛选

5总结

在程序的编写中,导致程序出现逻辑错误,我个人经验不足,所以一旦出现错误就添加一些语句,比如添加printf("

测试语句|\n"

);

在程序中,断定其程序中哪一些地方出现错误,发现其中的错误,修改后再删除掉。

由于忘记了函数的调用方法,导致程序show无法调用,查看网上类似的程序,终于发现错误。

6源程序清单

#include<

stdio.h>

string.h>

stdlib.h>

conio.h>

#defineN15

#defineM20

#defineLENsizeof(structfly)

typedefstructfly{

/*航班号*/

intbanqi[M];

structflyf[N];

voidshow(inti);

voidorder(int);

/*排序*/

/*编号查询系统*/

/*起点站查询系统*/

/*达到站查询系统*/

/*起点时间查询系统*/

/*到达时间查询系统*/

voidmain()

intn;

menu();

scanf("

%d"

&

n);

while(n)

{

switch(n)

{

case1:

in();

break;

case2:

search();

case3:

startpoint();

case4:

finalpoint();

case5:

startime();

case6:

finaltime();

default:

break;

}

getch();

menu();

scanf("

}

}

voidmenu()

system("

cls"

printf("

\n\n\n\n\n"

\t\t|--------------航班信息查询系统----------------|\n"

\t\t|0.退出|\n"

\t\t|1.录入记录|\n"

\t\t|2.航班号查询|\n"

\t\t|3.起点站查询|\n"

\t\t|4.到达站查询|\n"

\t\t|5.起飞时间查询|\n"

\t\t|6.到达时间查询|\n"

\t\t|----------------------------------------------|\n\n"

\t\t\t选择(0-6):

______"

voidin()

inti,m=0;

charch[2];

FILE*fp;

if((fp=fopen("

data"

"

ab+"

))==NULL)

printf("

不能打开文件\n"

return;

while(!

feof(fp))//feof()是文件结束检测函数,如果没有结束,返回值是0,结束了是1

if(fread(&

f[m],LEN,1,fp)==1)

m++;

fclose(fp);

if(m==0)

没有找到\n"

else

system("

/*system就是调用DOS命令,CLS命令的意思是清除屏幕上所有的文字*/

for(i=0;

i<

m;

i++)

show(i);

wb"

不能打开文件\n"

for(i=0;

fwrite(&

f[i],LEN,1,fp);

printf("

是否输入?

输入请按‘Y’否则按任意键----"

%s"

ch);

while(strcmp(ch,"

Y"

)==0||strcmp(ch,"

y"

)==0)

编号--------"

scanf("

f[m].no);

if(f[i].no==f[m].no)

{

printf("

该记录应经存在,请按任意键继续\n"

getch();

fclose(fp);

return;

}

起点站-----"

f[m].startpoint);

终点站-----"

f[m].finalpoint);

班期-------"

f[m].banqi);

起飞时间---"

f[m].startime);

到达时间---"

f[m].finaltime);

飞机型号---"

f[m].tipe);

价格-------"

%f"

f[m].price);

是否保存?

if(strcmp(ch,"

if(fwrite(&

f[m],LEN,1,fp)!

=1)

不能保存\n"

else

printf("

编号为%d的航班信息已经保存\n"

f[i].no);

m++;

是否继续,继续请按--Y--,否则按任意键"

OK"

voidsearch()/*编号查询系统*/

intsnum,i,m=0;

if((fp=fopen("

{

return;

}

while(!

feof(fp))

if(fread(&

f[m],LEN,1,fp)==1);

m++;

没有记录"

请输入编号----"

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1