




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件学院大作业任务书题 目:航班信息查询系统 专 业: 班 级: 姓 名: 学 号: 完成人数: 起讫日期: 任课教师: 职称: 讲师 部分管主任: 完成时间: 说 明1. 本任务书由任课教师填写后,下达到学生。2. 任务完成后,任课教师需填写小结表。3. 任务书、学生成绩与学生完成后的大作业(纸质和电子两种)一并报送各教学研究部审核后转教务办。4. 另附一份全班大作业总结大作业的要求和内容:(包括题目选择范围、技术要求、递交时间、考核方法等)请根据本学期所学C语言的内容,完成一个完整的C语言程序,程序的名称、内容和功能,可以自己根据需要进行自定义,但不能过于简单,代码行数最低要求在200行以上,且所设计的程序满足如下要求:1. 要求采用结构化程序设计;2. 程序中要具备结构体类型的数据操作;3. 程序中要具备文件读取和写入的操作;4. 要求程序具备简单的菜单功能,根据用户的输入,执行相应的操作;5. 在菜单界面,必须显示程序的名称、版本信息,开发者的名字、班级、学号等信息。最终提交的作业,除提交完整的程序工程代码外,还必须以大作业报告的形式说明程序的流程、结构以及设计、实现过程。作业评分将以完成的程序质量和复杂程度为基础,并根据大作业报告进行综合评分。教师小结:成绩: 教 师 签 名: 教研部负责人: 学生姓名: NANCHANG UNIVERSITY高级语言程序设计课程设计 题 目: 航班信息查询系统 学 院: 专 业: 班 级: 完成人数: 成 员: 起讫日期: 任课教师: 完成时间: 填表日期: 目 录一、需求分析- 1 -1.1项目介绍- 1 -1.2功能需求- 1 -二、系统分析- 1 -2.1本程序需解决的关键技术问题- 1 -2.2程序流程- 1 -三、程序设计与实现- 1 -3.1程序设计- 1 -3.2程序实现- 2 -四、系统测试- 2 -五、个人小结- 2 -六、参考文献- 2 -一、 需求分析1.1 项目介绍一个简易的航班信息查询系统,将航班信息录入进去,就可以查询到航班的信息1.2 功能需求1 所有航班信息2 航班查询3 输入新的航班信息4 删除航班信息二、 系统分析2.1 本程序需解决的关键技术问题使用了struct结构体 多次使用了if语句 for循环语句用到了指针的内容2.2 程序流程1,了解问题。要解决问题,必须先了解每个细节。2 ,确定解决问题的流程,确认输入输出内容即内部需要做的操作。输入:用户的选择指令。输出:程序的运行结果。操作:对信息读入,存储,删除3,设计操作算法。得出数据流图。对每块的操作流程做设计。如何对信息读入,存储,删除等。4 编写代码。将算法实体化,形成C代码。5 测试并解决问题。编译运行,尝试输入多组数据,测试结果是否与预期相同。如果不同,那么查找问题并修改代码。最终形成合格的程序。三、 程序设计与实现3.1 程序设计#include#include#include#include#define N 15#define M 20#define LEN sizeof(struct fly)typedef struct flyint no;/*航班号*/char startpointM; char finalpointM;int banqiM;char startimeM;char finaltimeM;char tipeM;float price; struct fly fN;void in();void all();void show(int i);void order(int); /*排序*/void find(); /*查询系统*/void search(); /*编号查询系统*/void menu();void startpoint(); /*起点站查询系统*/void finalpoint(); /*达到站查询系统*/void startime(); /*起点时间查询系统*/void finaltime(); /*到达时间查询系统*/int main()int n;menu();scanf(%d,&n);while(n)switch(n)case 1:all();break;case 2:find();break;case 3:in();break;default:break;getch();menu();scanf(%d,&n);void menu()system(cls);printf(nnnnn);printf(tt|-航班信息查询系统-|n);printf(tt| 0.退出 |n);printf(tt| 1.所有航班 |n);printf(tt| 2.航班查询 |n);printf(tt| 3.输入新的航班信息 |n);printf(tt| 4.删除航班信息 |n);printf(tt|-|nn );printf(ttt 选择(0-4):_);void all()int i,m=0;char ch2;FILE *fp;if(fp=fopen(data,ab+)=NULL)printf(不能打开文件n);return;while(!feof(fp)/feof()是文件结束检测函数,如果没有结束,返回值是0,结束了是1if(fread(&fm,LEN,1,fp)=1)m+;fclose(fp);if(m=0)printf(没有航班记录n);elsesystem(cls);/*system就是调用DOS命令,CLS命令的意思是清除屏幕上所有的文字*/for(i=0;im;i+)show(i);printf(按任意键返回菜单);void in()int x,i,m=0;char ch2;FILE *fp;if(fp=fopen(data,ab+)=NULL)printf(不能打开文件n);return;while(!feof(fp)/feof()是文件结束检测函数,如果没有结束,返回值是0,结束了是1if(fread(&fm,LEN,1,fp)=1)m+;fclose(fp);if(fp=fopen(data,wb)=NULL)printf(不能打开文件n );return;for(i=0;im;i+)fwrite(&fi,LEN,1,fp);printf(是否输入新的航班信息?输入请按Y否则按任意键-);scanf(%s,ch);while(strcmp(ch,Y)=0|strcmp(ch,y)=0)printf(编号-);scanf(%d,&x);for(i=0;im;i+)if(fi.no=x)printf(该记录已经存在!按任意键返回菜单n);fclose(fp);return;fm.no=x;printf(起点站-);scanf(%s,&fm.startpoint);printf(终点站-);scanf(%s,&fm.finalpoint);printf(班期-);scanf(%s,&fm.banqi);printf(起飞时间-);scanf(%s,&fm.startime);printf(到达时间-);scanf(%s,&fm.finaltime);printf(飞机型号-);scanf(%s,&fm.tipe);printf(价格-);scanf(%f,&fm.price);printf(是否保存?输入请按Y否则按任意键-);scanf(%s,ch);if(strcmp(ch,Y)=0|strcmp(ch,y)=0)if(fwrite(&fm,LEN,1,fp)!=1)printf(不能保存n);getch();elseprintf(编号为%d的航班信息已经保存n,fi.no);m+;printf(是否继续,继续请按-Y-,否则按任意键);scanf(%s,ch);fclose(fp);printf(OK);void find() /*查询系统*/ system(cls);printf(nnnnn);printf(tt|-航班信息查询-|n);printf(tt| 0.返回菜单 |n);printf(tt| 1.航班号查询 |n);printf(tt| 2.起点站查询 |n);printf(tt| 3.到达站查询 |n);printf(tt| 4.起飞时间查询 |n);printf(tt| 5.到达时间查询 |n);printf(tt|-|nn );printf(ttt 选择(0-5):_);int n;scanf(%d,&n);if(n5)printf(输入错误!);else switch(n) case 0:return;case 1:search();break;case 2:startpoint();break;case 3:finalpoint();break;case 4:startime();break;case 5:finaltime();break;default:break;void search() /*编号查询系统*/FILE *fp;int snum,i,m=0,x=0;char ch2;if(fp=fopen(data,ab+)=NULL)printf(不能打开文件n);return;while(!feof(fp)if(fread(&fm,LEN,1,fp)=1);m+;if(m=0)printf(没有记录);return;printf(请输入编号-);scanf(%d,&snum);for(i=0;im;i+)if(snum=fi.no)show(i);x+;if(x=0)printf(没有相关的记录n);fclose(fp);return;void startpoint() /*起点站查询系统*/FILE *fp;int i,m=0;char snumM;if(fp=fopen(data,ab+)=NULL)printf(不能打开文件n);return;while(!feof(fp)if(fread(&fm,LEN,1,fp)=1);m+;fclose(fp);if(m=0)printf(没有记录);return;printf(请输入起点站-);scanf(%s,&snum);for(i=0;im;i+)if(strcmp(fi.startpoint,snum)=0) show(i);elseprintf(没有相关的记录n);return;void finalpoint() /*到达站查询系统*/FILE *fp;int i,m=0;char snumM;if(fp=fopen(data,ab+)=NULL)printf(不能打开文件n);return;while(!feof(fp)if(fread(&fm,LEN,1,fp)=1);m+;fclose(fp);if(m=0)printf(没有记录);return;printf(请输入到达站-);scanf(%s,&snum);for(i=0;im;i+)if(strcmp(fi.finalpoint,snum)=0)show(i);continue;elseprintf(没有相关的记录n);return;void startime() /*起点时间查询系统*/FILE *fp;int i,m=0;char snumM;if(fp=fopen(data,ab+)=NULL)printf(不能打开文件n);return;while(!feof(fp)if(fread(&fm,LEN,1,fp)=1);m+;fclose(fp);if(m=0)printf(没有记录);return;printf(请输入起点时间-);scanf(%s,&snum);for(i=0;im;i+)if(strcmp(fi.startime,snum)=0)show(i);continue;elseprintf(没有相关的记录n);return;void finaltime() /*达到时间查询系统*/FILE *fp;int i,m=0;char snumM;if(fp=fopen(data,ab+)=NULL)printf(不能打开文件n);return;while(!feof(fp)if(fread(&fm,LEN,1,fp)=1);m+;fclose(fp);if(m=0)printf(没有记录);return;printf(请输入到达时间-);scanf(%s,&snum);for(i=0;im;i+)if(strcmp(fi.finaltime,snum)=0)show(i);continue;elseprintf(没有相关的记录n);return;void show(int i)printf(航班编号为%d的航班信息如下:n,fi.no);printf(起点站-%s n,fi.startpoint);printf(终点站-%s n,fi.finalpoint);printf(起飞时间-%s n,fi.startime);printf(到达时间-%s n,fi.finaltime);printf(班期-%s n,fi.banqi);printf(航班型号-%s n,fi.tipe);printf(价格-%5.2f n,fi.price);printf(nnnn);四、 系统测试五、 个人小结C语言是面向过程的语言,整体程序都是由函数组成的,所有的执行代码都应该位于函数内部,C语言的程序是从ma
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外贸英语函电与实务练习题
- 《学生个人电脑硬件操作培训教案》
- 土地综合开发合作协议
- 从一本好书中学到的道理读后感类作文(15篇)
- 六一亲子诵读活动方案
- 六一儿童节比武活动方案
- 六一公司团委活动方案
- 医学营养考试试题及答案
- 六一套圈圈活动方案
- 医学考试试题库及答案
- GB/T 20230-2022磷化铟单晶
- GB/T 16432-2016康复辅助器具分类和术语
- GB 6245-2006消防泵
- 清洁消毒记录
- 中考道德与法治复习要点+九年级中考道德与法治复习题
- 领导干部重大事项报告登记表
- 职业安全卫生培训讲义课件
- 呼吸道感染的实验室诊断课件
- HPV与宫颈病变课件
- 环境有害物质管理标准
- 动火许可证(模板)
评论
0/150
提交评论