1、根据需求分析,可以将这个系统的设计分为如下五大模块:输入航班信息,保存航班信息, 浏览航班信息,查找航班信息,退出。四、 详细设计1、 结构体设计建立航班结构体, 结构体成员包括航班号, 起点站, 终点站, 飞行时间 (星期几) ,预售票总数. struct air int fir_num;char start20;char terminus20;char fir_time10;int count;sN; /*sN中每个数组元素依次对应一个航班信息*/注意 sN中的N为学生个数, 程序中采用宏定义的方式, 可以随时在源程序宏定义中改,本程序宏定义# define N 10000.2、 主函数流
2、程图:显示一系列功能选项主要程序:main() /主函数 int j; printf( -欢迎您到飞机订票系统-n);printf(*n do printf( 1.请输入预定的飞机信息nn 2.浏览所要预定的飞机信息nn 3.查询所要预定的飞机信息nn 0.退出系统nn注意:这个飞机订票系统仅仅支持最近几个星期的航班信息!nn请在03之间选择一个数字,然后按Enter: scanf(%d,&j); switch(j) / 利用枚举而选择其结构体中的一种 case 1: input(); break; case 2:print(); case 3:search(); case 0: while(
3、j!=0);谢谢您使用我们的飞机订票系统n3、 各功能模块设计(1)、输入航班信息模块主要代码:void input() /输入函数的定义 char f=朱海侨; int y;请输入密码,然后再按Enter:%s,f); if(strcmp(f,)=0)请按顺序输入飞机航班信息(飞机航班的信息是以0结尾的): for(i=0;iN;i+)请输入飞机号:nsi.fir_num);请输入出发地:,si.start);请输入终点:,si.terminus);请输入飞行时间:,si.fir_time);请输入飞机票序列号(序列号应该是以0结尾):,m);si.count); m+;该组信息已经建立!请
4、按任意键继续,按0结束!y); if(y=0) save(); print(); else密码错误!请在此输入您的密码,谢谢!void save() /存储函数的定义 FILE *fp,*fp1; if(fp=fopen(chen.dat,wb)=NULL) printf(建立文件失败! getchar(); return; if(fp1=fopen(hao.datm; if(fwrite(&si,sizeof(struct air),1,fp)=0)在文件中输入数据失败nn fprintf(fp1, fclose(fp); fclose(fp1);(2)、保存信息模块(3)、信息浏览模块vo
5、id read() /读写函数的定义rb错误:请确定文件是存在的!请输入任意键返回菜单!getchar(); fscanf(fp1,m); fread(&si,sizeof(s),1,fp); void print() char w10; read();航班号 始发地 终点 时间 飞机票号n printf( PRINT );请输入任意键返回上一级菜单:,w);(4)查询信息模块显示查询方式菜单void search() /查询函数的定义 char name120; char name220; char ii10; char ctime10; int n,no;请选择一种你想要查找的方式: pr
6、intf(1.根据航班号查找nn2.根据终点地查找nn 3.根据始发地查找nn4.根据飞行时间查找nn0.返回nn 请在04中间选择一个整数:请输入任意键返回开始菜单:n); if(n=0) switch(n) case 1:请输入航班号:no);请输入终点 :,name2);请输入始发地:,name1); case 4:,ctime); if(strcmp(si.start,name1)=0|strcmp(si.terminus,name2)=0)n成功查找到了航班信息! printf(PRINT); if(si.fir_num=no)printf( if(strcmp(si.fir_tim
7、e,ctime)=0)no=0;不能找到您所需要的信息!:您还需要继续服务,请输入“YES”或者“NO”,然后再按Enter n,ii); while(strcmp(ii,yes)=0);五、 上机操作1、 输入数据管理员输入航班信息:航班号 起点站 终点站 飞行时间 票数 100 武汉 西安 7.8 90101 武汉 北京 7.9 780102 上海 西安 7.9 340103 广州 武汉 7.8 10103 广州 武汉 7.9 5002、 编译、连接、运行3、 结果显示(1) 主菜单:(2)、输入密码:(3)、输入信息 (4)、浏览信息(5)、信息查询(5.1)按航班号查询(5.2)按终点
8、站查询(5.3)按起点站查询(5.4)、按时间查询六、 总结通过这次课程设计,我重新温习了C语言的知识,加深了对书上知识的理解,系统地运用已学的知识,掌握了模块化设计方法以及用流程图表示算法,扩张自己在C语言方面视野,提高了自己用C语言进行程序设计的能力。相信通过此次C语言课程设计所学的知识,在以后我能够在实际生活中解决所遇到的问题。七、附录源程序:/ 飞机订票系统.cpp : Defines the entry point for the console application./#include stdafx.h#includestring.hstdlib.h#define N 1000s
9、truct air /定义一个结构体 int fir_num; char start20; char terminus20; char fir_time10; int count; sN; int i; int m=0; #define PRINT %-d%23s%15s%10s%10dn,si.fir_num,si.start,si.terminus,si.fir_time,si.count void input(); /声明一些功能函数 void print(); void save(); void read(); void search(); void main() /主函数请输入起点站:请输入终点站:请输入飞机票数(序列号应该是以0结尾):航班号 起点站 终点站 时间 票数n2.根据终点站查找nn3.根据起点站查找nn请输入终点站 :
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1