数学-课程教学辅导资料ppt课件_第1页
数学-课程教学辅导资料ppt课件_第2页
数学-课程教学辅导资料ppt课件_第3页
数学-课程教学辅导资料ppt课件_第4页
数学-课程教学辅导资料ppt课件_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,1,C语言课程设计,2010.9,.,2,一、课程基本信息,课程性质:实践性课程适应对象:信息技术类专业学生学时分配:总学时32,其中:讲授2学时,实验28学时,答辩2学时赋予学分:2.0学分先修课程:C语言程序设计,.,3,二、教学目的与要求,本课程设计是信息类专业的重要实践性课程目的在于培养学生分析问题和解决问题的能力,为学生提供了一个既动手又动脑,独立实践的机会。将课本上的理论知识和实际应用问题进行有机结合,提高学生程序设计、程序调试及项目开发能力。为后续课程:数据结构、面向对象程序设计等奠定必要的实践基础。本课程教学的基本目的进一步巩固和复习C程序设计的基础知识;培养学生结构化程序、模块化程序设计的方法和能力;提高学生程序调试的技巧和软件设计的能力;提高学生分析问题、解决问题以及实际运用的能力。本课程教学的基本要求本课程设计是利用C语言理论和实验课中学到的编程知识和编程技巧,通过布置具有一定难度、一定编程量的课程设计题目,使学生通过课程设计掌握高级编程语言的知识和编程技术,掌握程序设计的思想和方法,具备利用计算机求解实际问题的能力。,.,4,三、教学内容与安排,课程设计主要分成以下几个阶段:资料查阅与方案制定阶段。在资料查阅的基础上,学生对所选课题进行功能分析与设计,确定方案。程序编制与调试阶段。学生在指导老师的指导下独立完成程序的编制与调试,指导老师应实时考察学生的实际编程与调试能力。撰写设计报告阶段。学生根据规定的格式撰写课程设计报告。答辩与考核阶段。学生进行演示及回答问题。指导教师将综合每一学生的表现及能力进行综合评分。交流活动:在若干阶段中,安排适当的交流活动,提高学生相互启发、学习的能力。,.,5,三、教学内容与安排,课程设计选题选题原则:课程设计题目选择得是否合适,直接关系到它的教学效果。一般来将应当照顾到以下几个方面:设计的选题首先要符合教学要求,使学生能够运用理论课程中所学的基本知识,进行基本技能方面的训练。设计的选题的主要内容应当是学生在理论课程中学过的知识,有需要扩展的知识,应在设计过程中补充讲解。课题指标可从学生实际出发,做到难易适中,或因人而异,让不同程度的学生经过努力都能够完成任务,有所收获。设计参考题目通讯录管理程序工资管理程序成绩处理程序除此之外,学生可自行选择课题进行设计(课题须经指导教师审题合格后),对于大型项目可进行团队开发,但应制定详细的项目分工说明。,.,6,四、教学进度计划,.,7,五、课程考核成绩构成,平时成绩:15%,实验成绩:50%,期末成绩:35%说明平时:交流占15%实验:完成设计题目占50%(要求提交源程序)期末:答辩及演示占15%、课程设计报告占20%期末须提交的材料课程设计报告(Word2003格式电子文档)C语言源程序,.,8,五、课程考核成绩构成,.,9,六、联系方式,在本课程上课教室交流Email:huading.jia,.,10,课程设计报告的内容,一、题目内容的描述二、应用程序功能的详细说明三、输入数据类型、格式和内容限制四、主要模块的算法描述(1)以程序流程图的方式给出(2)简要的语言描述五、结束语六、程序的源代码清单七、报告的篇幅:不算源代码清单不少于4页自定义封面格式,.,11,课程设计报告的格式,1、设计目的2、总体设计(程序设计组成框图、流程图)3、详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施5、源程序清单和执行结果:清单中应有足够的注释说明:正文宋体小四号字每个自然段开始空两格.文中英文用新罗马(timenewroman),四号源程序清单用英文新罗马五号软件:需提供源程序,并能正常运行。注:对于程序中未能实现的部分需要加以说明。对于程序中所参考的部分代码需要加以声明,并说明出处。,.,12,课程设计要求,可自己选定一题目,限1人选的题目只能由1人单独完成,限4人选的题目可由1-4人完成。模块化程序设计锯齿型书写格式须上机调试通过自定义封面格式注意:每个班选同一题的数目不能超过3。,.,13,检查要求与考核依据,检查要求每个人必须有可运行的程序及其源代码(学期末检查)每个人必须交C语言课程设计报告的打印稿和电子稿(Word2003格式电子版)考核依据按时完成根据程序运行结果根据C语言课程设计报告,学生能对自己的程序面对教师提问并能熟练地解释清楚以上三项缺一不可,否则不能到得相应学分,.,14,参考评分标准,课程设计成绩评定的依据有设计文档资料、具体实现设计方案的程序及演示和答辩。优(=90分):按要求完成题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确,其中有总体设计思想的论述,有正确的流程图,程序完全实现设计方案,设计方案先进,软件可靠性好;良(80分89分):完成设计题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确;有完全实现设计方案的软件,设计方案较先进;中(70分79分):基本完成题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案正确;及格(60分69分):基本完成题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案基本正确;不及格(=59分):没有完成题目的要求,没有完整的符合标准的文档,软件没有基本实现设计方案,设计方案不正确。,.,15,大型综合程序范例解析,学生成绩管理系统,.,16,C语言课程设计是一门实践性很强的课程。通过前继课程的实验,我们进行了小型程序的编程训练,掌握了C语言的基本语法和良好的书写风格,培养了程序设计和编码的基本能力,初步理解了结构化程序设计的思想和方法。接下来的课程设计我们要求应用软件工程的思想和方法,从问题分析、设计、编码和测试等方面来理解编写大型程序的设计思想和开发方法,提高实际动手编程能力以及培养团队合作精神。,.,17,范例:学生成绩管理系统,学生信息包括学号、姓名、英语成绩、数学成绩、计算机成绩(0-100)、平均成绩。试设计一学生成绩管理系统,使之能完成下列功能(要求系统以菜单方式工作):学生信息录入功能(学生信息用文件保存)输入学生信息浏览功能输出查询或排序(至少一种查询方式)算法a按学号查询(或排序)b按姓名查询(或排序)c按成绩查询(或排序)学生信息的删除与修改(可选项)将学生信息存储到文件从磁盘读入学生信息退出系统,.,18,学生成绩管理系统,问题描述:以文件的方式保存用户录入的学生信息(学号、姓名、英语、数学、计算机、平均成绩),并可浏览信息,根据用户提供的信息进行查询、删除与修改操作。程序中要求用到指针的操作,结构体和共用体数据结构的定义、使用,以及文件的读写、定位等。,.,19,学生成绩管理系统,记录项属性:学号、姓名、英语、数学、计算机、平均成绩。数据以文件形式存储在磁盘上;在程序运行中需要对文件进行读取操作。程序要对输入数据的容错性进行检查,以保证数程序中要求用到指针的操作,结构体和共用体数据结构的定义、使用,以及文件的读写、定位等。,.,20,功能分析,记录项属性:学号、姓名、英语、数学、计算机、平均成绩。数据以文件形式存储在磁盘上;在程序运行中需要对文件进行读取操作。程序要对输入数据的容错性进行检查,以保证数据的合法性。,.,21,操作功能,录入:操作添加一条新的记录项删除:删除一条已经存在的记录项修改:改变记录项的一个或多个属性,并用新的记录项覆盖已经存在的记录项。查找:根据用户输入的属性值查找符合条件的记录项。浏览:输出学生信息。,.,22,程序总体结构,输入输出模块:人机交互,包括程序界面显示、用户输入响应、结果输出等。管理模块:管理模块从输入输出模块读取用户命令并进行相应的操作,包括录入、删除、修改、查找、列表等。文件操作模块:进行存储文件的读写。,.,23,模块结构图,.,24,程序运行示意图,.,25,程序解析:HeadFile.h,在HeadFile.h中声明如下结构typedefstructmyrecordunsignedintnum;/学号charnameMAXLEN+1;/姓名unsignedintenglish_score;/英语成绩unsignedintmath_score;/数学成绩unsignedintcomputer_score;/计算机成绩floataverage;/平均成绩myrecord;,.,26,程序解析:HeadFile.h,在HeadFile.h中声明如下查寻信息的联合体typedefunionmysearch_entryunsignedintnum;/学号charnameMAXLEN+1;/姓名unsignedintenglish_score;/英语成绩unsignedintmath_score;/数学成绩unsignedintcomputer_score;/计算机成绩floataverage;/平均成绩myrecord;,.,27,程序解析:查寻信息项(HeadFile.h),在HeadFile.h中声明如下查寻信息的联合体typedefunionmysearch_entryunsignedintnum;/学号charnameMAXLEN+1;/姓名unsignedintenglish_score;/英语成绩unsignedintmath_score;/数学成绩unsignedintcomputer_score;/计算机成绩floataverage;/平均成绩search_entry;,.,28,程序解析:全局变量声明(HeadFile.h),在HeadFile.h中声明如下全局变量externmyrecordinput,output;externsearch_entrysitem;externFILE*fp;externcharch;,.,29,程序解析:(HeadFile.h),在HeadFile.h中定义如下宏#defineFILENAMEstudent_manager.txt/存储文件名#defineBLOCKSIZE(sizeof(structmyrecord)+10)/文件存储块的大小#defineBASE10000/起始学号#defineMAXLEN30/姓名最大长度,.,30,程序解析:函数的声明(HeadFile.h),输入输出函数voidmenulist(void);voidmydelay(void);structmyrecord*input_app(void);voidHead_format(void);#defineBASE10000/起始学号#defineMAXLEN30/姓名最大长度,.,31,程序解析:函数的声明(HeadFile.h),输入输出函数voidmenulist(void);voidmydelay(void);structmyrecord*input_app(void);voidHead_format(void);voidsearchmenu(void);voidinput_search(charch);intinput_num(void);intinput_new(myrecord*p);,.,32,程序解析:函数的声明(HeadFile.h),文件维护函数intfile_app(myrecord*p);myrecord*read_record(intn);intwrite_record(myrecord*p,intn);intfile_search(search_entry*s,intf);voidsearchmenu(void);voidinput_search(charch);intinput_num(void);intinput_new(myrecord*p);,.,33,程序解析:函数的声明(HeadFile.h),文件维护函数intfile_app(myrecord*p);myrecord*read_record(intn);intwrite_record(myrecord*p,intn);intfile_search(search_entry*s,intf);intfile_delete(intn);,.,34,程序解析:函数的声明(HeadFile.h),管理控制函数voidappend(void);voiddelet(void);voidsearch(void);voidchange(void);intfile_delete(intn);,.,35,程序解析:函数的声明(HeadFile.h),管理控制函数voidappend(void);voiddelet(void);voidsearch(void);voidchange(void);voidlist_all(void);voidinit(void);voidquit(void);,.,36,程序解析:函数的声明(HeadFile.h),/*函数原型:voidmenulist(void);*参数:无*返回值:无*函数功能:以文本方式显示程序主菜单,voidlist_all(void);voidinit(void);voidquit(void);,.,37,程序解析:函数功能描述(menu.cpp),/*函数原型:voidmenulist(void);*参数:无*返回值:无*函数功能:以文本方式显示程序主菜单,*同时响应用户输入。*/voidmenulist(void);,.,38,程序解析:函数功能描述(menu.cpp),/*函数原型:voidsearchmenu(void);*参数:无*返回值:无*函数功能:输出查询功能的子菜单。*/voidsearchmenu(void)*/voidmenulist(void);,.,39,程序解析:函数功能描述(menu.cpp),/*函数原型:voidsearchmenu(void);*参数:无*返回值:无*函数功能:输出查询功能的子菜单。*/voidsearchmenu(void)/*函数原型:voidinput_search(charch);*参数:charch用户输入的菜单选项*返回值:无*函数功能:处理查询时用户的输入,将关键字读入。*/voidinput_search(charch),.,40,程序解析:函数功能描述(menu.cpp),/*函数原型:myrecord*input_app(void);*参数:无*返回值:新增的记录项的地址*函数功能:录入信息时处理键盘输入,对输入进行合法性检查。*/structmyrecord*input_app(void)/*函数原型:voidinput_search(charch);*参数:charch用户输入的菜单选项*返回值:无*函数功能:处理查询时用户的输入,将关键字读入。*/voidinput_search(charch),.,41,程序解析:函数功能描述(menu.cpp),/*函数原型:myrecord*input_app(void);*参数:无*返回值:新增的记录项的地址*函数功能:录入信息时处理键盘输入,对输入进行合法性检查。*/structmyrecord*input_app(void)/*函数原型:intinput_num(void);*参数:读入的数值*返回值:无*函数功能:读入一个整型数值(记录编号),进行合法性检查。*/intinput_num(void),.,42,程序解析:函数功能描述(menu.cpp),/*函数原型:intinput_new(myrecord*p);*参数:新记录项的指针*返回值:返回是否进行了修改的信息,*已修改返回1,否则返回0。*函数功能:进行数据修改时,读入一个新的记录项,*并用它覆盖输入参数所指向的数据记录项。/*函数原型:intinput_num(void);*参数:读入的数值*返回值:无*函数功能:读入一个整型数值(记录编号),进行合法性检查。*/intinput_num(void),.,43,程序解析:函数功能描述(menu.cpp),/*函数原型:intinput_new(myrecord*p);*参数:新记录项的指针*返回值:返回是否进行了修改的信息,*已修改返回1,否则返回0。*函数功能:进行数据修改时,读入一个新的记录项,*并用它覆盖输入参数所指向的数据记录项。*/intinput_new(myrecord*p),.,44,程序解析:函数功能描述(control.cpp),#includeHeadFile.h/定义全局变量FILE*fp;charch;myrecordinput,output;search_entrysitem;,.,45,程序解析:函数功能描述(control.cpp),/*函数原型:voidinit(void);*参数:无*返回值:无*函数功能:打开文件,写入一个0,并将文件读写指针指向文件头。*/voidinit(void)/*函数原型:voidquit(void);*参数:无*返回值:无*函数功能:关闭文件,退出系统*/voidquit(void),.,46,程序解析:函数功能描述(control.cpp),/*函数原型:voidlist_all(void);*参数:无*返回值:无*函数功能:列出当前所有学生信息。*/voidlist_all(void)/*函数原型:voidquit(void);*参数:无*返回值:无*函数功能:关闭文件,退出系统*/voidquit(void),.,47,程序解析:函数功能描述(control.cpp),/*函数原型:voidlist_all(void);*参数:无*返回值:无*函数功能:列出当前所有学生信息。*/voidlist_all(void)/*函数原型:voidsearch(void);*参数:无*返回值:无*函数功能:执行数据查找操作。*/voidsearch(void),.,48,程序解析:函数功能描述(control.cpp),/*函数原型:voiddelet(void);*参数:无*返回值:无*函数功能:执行数据记录项删除操作。*/voiddelet(void)/*函数原型:voidsearch(void);*参数:无*返回值:无*函数功能:执行数据查找操作。*/voidsearch(void),.,49,程序解析:函数功能描述(control.cpp),/*函数原型:voiddelet(void);*参数:无*返回值:无*函数功能:执行数据记录项删除操作。*/voiddelet(void)/*函数原型:voidchange(void);*参数:无*返回值:无*函数功能:执行数据记录项修改操作。*/voidchange(void),.,50,程序解析:函数功能描述(control.cpp),/主函数voidmain()init();menulist();/*函数原型:voidchange(void);*参数:无*返回值:无*函数功能:执行数据记录项修改操作。*/voidchange(void),.,51,程序解析:函数功能描述(control.cpp),/主函数voidmain()init();menulist();,.,52,程序解析:函数功能描述(file.cpp)文件管理的函数,/*函数原型:intfile_app(myrecord*p);*参数:要录入的记录项的指针*返回值:插入成功返回,失败返回*函数功能:添加一条新的记录项。*/intfile_app(myrecord*p)/*函数原型:myrecord*read_record(intn);*参数:下标值*返回值:读取结果的指针*函数功能:从文件中读出下标为n的块(记录项)。*/myrecord*read_record(intn),.,53,程序解析:函数功能描述(file.cpp)文件管理的函数,/*函数原型:intfile_search(search_e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论