《C语言程序设计课程设计》 课程教学大纲
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C语言程序课程设计》课程教学大纲
一、课程基本信息
二、实验性质、地位和任务
《C语言程序课程设计》是一门实用性和实践性很强的课程,所以本课程的课程设计环节占有非常重要的地位。它是电子信息工程专业在C语言程序设计结束后的一门重要实践性课程,是为加强学生用程序设计的思想分析和解决问题的能力。
三、实验目的和要求
1、实验目的
在全面掌握《C语言程序设计》课程知识点的前提下,培养学生分析实际问题的能力。设计的主要目的和任务为:(1)巩固和加深学生对C语言程序设计课程的基本知识的理解和掌握;(2)利用C语言进行简单软件设计的基本思路和方法;(3)掌握程序项目开发的一般步骤;(4)掌握书写程序设计说明文档的能力。
2、实验要求
(1)作好实验前准备工作,对讨论的课程设计问题应事先进行初步设计与算法设计,以提高上机效率。
(2)上机实验时一人一机,独立上机。对程序调试过程中出现的问题应尽量独立解决,以训练学生分析问题和解决问题的能力。
(3)应按时完成课程设计任务。
(4)课程设计完成后应分析实验结果,找出存在的问题,寻找出解决问题的办法并解决问题,从而提高程序设计的能力。
四、实验项目和学时分配
1、问题分析和任务定义(4学时)
(1)内容:根据设计题目的要求,充分分析和理解问题,明确问题要求做什么,限制条件是什么。
(2)要求:掌握问题分析的方法,以无歧义的陈述说明程序设计的任务;了解以用例图来明确系统功能的方法。
(3)重难点:以无歧义的陈述说明程序设计的任务;对问题作透彻分析,避免出现需求分析错误。
(4)说明:本阶段是解决“做什么”的问题,就是要全面理解用户的各项要求,并准确表达所接受的用户需求。
2、逻辑设计和数据结构的选择(4学时)
(1)内容:为操作对象定义相应的数据结构,以结构化程序设计的思想方法为原则划分各个模块,定义数据的抽象数据类型。
(2)要求:掌握逻辑设计和数据结构选择的方法。
(3)重难点:逻辑设计和数据结构选择。
(4)说明:本阶段的主要任务是把需求分析得到得数据流图转换为软件结构和数据结构。设计软件结构的具体任务是:将一个负责系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。总体设计建立的是目标系统的逻辑模型,与计算机无关。
3、详细设计和编码(8个学时)
(1)内容:算法的具体描述和代码的书写
(2)要求:掌握在逻辑设计基础上作详细设计的方法,把详细设计的结果进一步求精为程序设计语言程序。同时加入一些注解和断言,使程序中逻辑概念清楚。
(3)重难点:在逻辑设计基础上作详细设计并编码实现。
(4)说明:本阶段主要任务是设计每个模块的实现算法、所需的局部数据结构。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。
4、上机调试(8个学时)
(1)内容:源程序的输入和代码的调试
(2)要求:能够熟练掌握调试工具的各种功能,设计测试数据确定疑点,通过修改程序来证实它或绕过它。调试正确后,认真整理源程序及其注释,形成格式和风格良好的源程序清单和结果。理解算法的时间、空间复杂性的分析方法。了解对代码重构的一般方法。
(3)重难点:掌握调试工具的各种功能。
5、编写课程设计报告(8个学时)
(1)内容:按照给定的报告模板,编写课程设计报告
(2)要求:设计报告书封面和正文格式符合武汉工商学院课程设计、实习报告书封面与正文标准格式要求。
五、实验项目主要内容
要求学生从以下5题中选做1题
(一)职工信息管理系统开发
职工信息包括职工号,姓名,性别,年龄,学历,工资,住址,电话等(职工号不相等)。试设计一职工信息管理系统,使之能够提供下列功能:
(1)系统以菜单方式工作(必做)。
(2)职工信息录入功能(职工信息用文件保存)(必做)。
(3)职工信息浏览功能(必做)。
(4)职工信息查询功能,查询方式:(至少完成一项)
1)按学历查询
2)按职工号查询
3)按电话号码查询
(5)职工信息删除,修改功能(可选项)。
其中:职工号系统随机生成,范围在2014000—2014999内。
(二)学生成绩管理系统开发
学生信息至少包括学号,姓名,性别,计算机分数,数学分数,英语分数等(学号不得相等)。该系统需要能够提供下列功能:
(1)系统以菜单方式工作(必做)。
(2)学生信息录入功能(学生信息用文件保存)(必做)。
(3)学生信息浏览功能(能查看所有同学的记录)(必做)。
(4)学生信息查询功能,查询方式:(至少完成一项)
1)按学号查询
2)按姓名查询
(5)成绩排序统计功能:(至少完成一项)
1)按照指定的要求对学生记录进行排序
2)按照指定的学科对成绩进行统计,需要提供该门成绩的:最高分、最低分、平均分、及格率及在五个分数段的学生人数比率([0,59],[60,69],[70,79],[80,89],[90,100])
(6)学生信息删除,修改功能(可选项)。
其中:学号系统随机生成,范围在2014000—2014999内。
(三)通讯录管理系统开发
制作一个通讯录程序,该程序具有查找、添加、修改、删除功能。通讯录包括:姓名,电话,街道,城市,省,邮编等。(最多存放500条信息)
该系统需要能够提供下列功能:
(1)系统以菜单方式工作。
(2)创建通讯录。(信息用文件保存)
(3)添加通讯录:在已有通讯录的末尾,写入新的信息,并返回选单。
(4)查询:(按照姓名或电话号码查询),如果找到了,则显示该人的信息,如果未找到,则提示通讯录中没有此人的信息,并返回选单。
(5)修改:修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。
(6)删除:删除某人的信息,如果未找到要删除的人,则提示通讯录中没有此人的信息,并返回选单。
(7)显示:显示通讯录中的所有记录。
(8)退出:退出选单。
(四)学生选修课查询系统开发
假定有100门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期及课程的大致内容描述等信息,学生可查询这些课程的相关信息。试设计一选修课查询系统,使之能提供以下功能:
(1)系统以菜单方式工作。
(2)课程信息录入功能(课程信息用文件保存)。
(3)课程信息浏览功能:显示所有课程的所有信息。
(4)查询功能:(至少一种查询方式)
1)按学分数查询
2)按开课学期查询
3)按课程编号查询
(5)修改课程信息:对某门课程信息进行修。
(6)删除课程:将某门课程的信息删除。
(7)退出。
其中:课程编号随机生成,范围在2001—2099内。