C语言专业课程设计方案报告范例.doc
《C语言专业课程设计方案报告范例.doc》由会员分享,可在线阅读,更多相关《C语言专业课程设计方案报告范例.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、XX学院C语言课程设计汇报课程名称: C语言课程设计 课程编号: 汇报题目: 学生姓名: 学 号: 专 业 成 绩: 任课老师: 评阅日期: C语言课程设计汇报一、 C语言课程设计目标C语言教学是学生依据课堂讲授内容,学生做对应自主练习,消化课堂所讲解内容;经过调试经典例题或习题积累调试C程序经验;经过完成教导教材中编程题,逐步培养学生编程能力、用计算机处理实际问题能力。具体来说: 1 深入掌握和利用C语言进行程设计能力; 2、 深入了解和利用结构化程设计思想和方法; 3、 初步掌握开发一个小型实用系统基础方法; 4、 学会调试一个较长程序基础方法; 5、 学会利用步骤图或N-S图表示算法;
2、6、 掌握书写程设计开发文档能力(书写课程设计汇报);二、课程设计汇报正文(1)课程设计题目标原文;假定民航机场共有n个航班:航班号、起始站、终点站、飞机号、飞机时间、乘员定额、余票量。试设计一民航订票系统,使之能提供下列服务:l 航班信息录入功效(文件保留) l 完成航班信息浏览功效; l 查询航线(最少一个查询方法)。(2)题目标分析(需求分析);任务:经过此系统能够实现以下功效: 录入: 能够录入航班情况(数据能够存放在一个数据文件中)浏览:航班信息浏览功效需要提供显示操作; 查询:可提供根据航班号、起点站、终点站、飞行时间、查询,能够查询某个航线情况(如,输入航班号,起飞抵达城市,确定
3、航班是否满仓);另外要提供键盘式选择菜单以实现功效选择。 要求:依据以上功效说明,设计航班信息,订票信息存放结构,设计程序完成功效。能够建立航班结构体,结构体组员包含航班号、起点站、终点站、飞行时间、预售票总数、已售票数。 (3)整体设计和模块划分;依据需求分析,该程序可分为以下四大模块:输入模块显示模块查询模块退出模块飞机订票系统(4)代码设计;包含各功效模块步骤图;关键模块中关键部分代码分析;关键函数算法设计和分析;等等;A.主函数(1)分析:主函数功效比较简单,形式比较简练,关键功效为:在系统中没有程序所要文件时,为程序建立一个所许文件;调用菜单函数。程序中各模块全部要用到同一个文件,假
4、如该文件不存在,则该程序就无法正常运行,增加第一个功效就是确保文件可用切可打开!原来只要在主函数里调用各功效模块就行了,不过为了让程序能够方便回到主函数里,所以就建立了一个菜单函数。菜单函数功效是替主函数调用个功效模块函数,所以设计基础思绪很简单,即:用一个输入来接收用户选择,加以个循环来让输入错误用户继续输入,直到输入正确为止;用一个switch语句来选择用户所要用到函数。(2)程序:void menu()int n,w;doputs(tt*MENU*nn);puts(tttt 1.enter new data);puts(tttt 2.Browse all);puts(tttt 3.Sea
5、rch);puts(tttt 4.exit);puts(nntt *n);printf(Choice your number(1-4): bb);scanf(%d,&n);if(n4)w=1;getchar();else w=0;while(w=1);switch(n)case 1:enter();break;case 2:Browse();break;case 3:Search();break;case 4:exit(0);/*主函数*/main()menu();B.公共函数(1)分析:各功效模块中分程序中交错较多,所以,本程序公共函有5个,这使得各功效模块函数显得简练,这是程序一个特点。此
6、处公共函数功效较为简单,但她很实用。(2)程序:1、把航班信息输入到文件中函数。void input(i)struct flight t;printf(nflight_no startstation endstation flytime plan_ticket sell_ticketn);scanf(%d%s%s%s%d%d,&t.flight_no,t.startstation,t.endstation,t.flytime,&t.plan_ticket,&t.sell_ticket);fp=fopen(flydata.txt,ab); if(!fp)printf(can not open t
7、his filen);exit(0); else fwrite(&t,sizeof(struct flight),1,fp); fclose(fp);2、输出一个 航班信息函数void printf_oneflight(int i)printf(n%5d%20s%20s%10s%4d%4dn,flyi.flight_no,flyi.startstation,flyi.endstation,flyi.flytime,flyi.plan_ticket,flyi.sell_ticket);3、输出文件内容结构函数void printf_face()printf(ntNO. startstation
8、endstation flytime plan_ticketsell_ticketn);4、载入函数实现文件内容载入程序,并返回飞机航班数值。int load()FILE *fp;int i;if(fp=fopen(flydata.txt,rb)=NULL)printf(nCan not open filen);exit(0);for(i=0;!feof(fp);i+)fread(&flyi,sizeof(struct flight),1,fp);fclose(fp);return(i-1);5、返回退出函数实现程序退出、返回。void printf_back()int w;printf(nn
9、tSuccessful._nn);printf(What do you want to do?nnt1).Browse all nowt2).back:bb);scanf(%d,&w);if(w=1) Browse();else menu();C.航班基础信息输入模块航班信息录入函数:(1)分析:航班基础信息,对它们输入后,要存进原文件,采取fwrite函数就能够实现。不过,用该函数存进文件数据全部是以二进制形式存在,不是通常所采取形式,能够改用fprintf函数来实现该功效。不过本程序采取是fwrite函数。再用户输入完成后,程序会问询是否继续输入,这个功效更具人性化,能够省去返回到主函数在
10、进入这个函数麻烦!步骤图输入信息文件打开否 输入信息是否继续将信息输出到磁盘调用printf_back()函数结束开始输犯错误信息(2)程序:void enter()int i,n;printf(How many flights do you want input? : bb);scanf(%d,&n);printf(n Enter data nownn);for(i=0;in;i+)printf(n Input %dth float record.n,i+1);input(i);printf_back();D. 航班信息浏览模块步骤图显示信息开始文件打开查找航班信息是否查找到输入信息是否继续
11、结束输犯错误信息删除操作显示航班信息:void Browse()int i,n;n=load();printf_face();for(i=0;in;i+)if(i%10=0)printf(nPress any key to contiune .);getchar();puts(nn);puts(nn);printf_oneflight(i);printf(tThere are %d record.n,n);printf(nPress any key to back .n);getchar();menu();E. 航班信息查询模块分析:基础信息查询按查询可供选择方法比较丰富,可按航班号查询。在查
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 专业课程 设计方案 报告 范例
限制150内