1、武汉工程职业技术学院 C 语言课程设计一. 课程设计目的本课程设计是计算机应用专业重要的实践性环节之一,是在学生学习完C 程序设计语言课程后进行的一次全面的综合练习。本课程设计的目的和任务:1. 巩固和加深学生对 C 语言课程的基本知识的理解和掌握。2. 掌握 C 语言编程和程序调试的基本技能。3. 利用 C 语言进行基本的软件设计。4. 掌握书写程序设计说明文档的能力。5. 提高运用 C 语言解决实际问题的能力。二. 课程设计要求1. 分析课程设计题目的要求。2. 写出详细设计说明。3. 编写程序代码,调试程序使其能正确运行。4. 设计完成的软件要便于操作和使用。4. 设计完成后提交课程设计
2、报告。三. 课程设计内容每个学生在教师提供的课程设计题目中任意选择一题,独立完成,题目选定后不可更换。四. 课程设计报告的内容1. 课程设计名称、班级号、学号、学生姓名和课程设计起止日期。2. 课程设计目的和要求。3. 课程设计任务内容。4. 详细设计说明。5软件使用说明。6. 课程设计心得与体会。7. 附录 1:参考文献。8. 附录 2:部分程序清单(带有较详细的注释) 。五. 评分依据1. 根据平时上机考勤、表现和进度,教师将每天点名和检查。2. 根据课程设计完成情况,必须有可运行的软件。3. 根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格。六. 进度计划第一天 选择课程
3、设计题目,分析课题的要求,编写详细设计说明。第二天 交详细设计说明电子稿,编程。第三天 编程及调试。第四天 写课程设计报告,提交软件。第五天 提交课程设计报告(打印稿及电子稿) 。七. 机房上课时间安排星期一 8:3012:00(3208) 星期二 8:3012:00(3207)星期三 8:3012:00(3207) 星期五 8:3012:00(3207)八. 课程设计题目项目编号 C001 项目名称 学生成绩排名 训练对象 08 微机 学时 20课程名称 C 程序设计 教 材 C 语言程序设计 (陈立主编)目的1 熟悉变量、数组定义、使用、输入、输出等基本操作。2 进行选择、循环结构程序设计
4、练习。3 掌握冒泡法排序的算法。4 熟悉变量的指针和指向变量的的指针变量的概念和使用。5 熟悉数组的指针和指向数组的的指针变量的概念和使用。内容(方法、步骤、要求或考核标准)一 实训设备与工具个人计算机,Windows 操作系统,Turbo C 或 VC+编译开发环境一. 实训步骤、方法与要求1 定义一个数组 a11,用以存放学生的成绩。2 从键盘输入 10 个学生成绩。3 采用冒泡法,将学生成绩按照从高到低进行排序,排序由排序函数实现,在主函数中调用实现排序,并在主函数中输出排序后的成绩单(要求用指针实现参数传递) 。4 再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组。5 将排
5、好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列。6 将以上每一步骤的结果均打印输出,验证程序是否正确实现题目要求。7 在项目报告中画出程序流程图,说明程序设计的算法,附主要程序段。8 在项目报告中说明知识点。9 在项目报告中说明程序设计过程中的难点、解决办法及编程小结或体会。 三. 评分方法1.程序按照每一步骤是否实现分别给 5,5,20,20,15 分。2.项目报告中,流程图和算法描述(15 分) ,知识点描述(15 分) ,难点及解决办法或体会(5 分)项目编号 C002 项目名称 根据条件进行学生成绩排名 训练对象 08 微机 学时 20课程名称 C 程序设计 教 材
6、C 语言程序设计 (陈立主编)目的1.复习数组,选择、循环结构程序设计 2.掌握函数的定义、调用、声明,以及参数的两种传递方式3.掌握结构体变量及数组的定义、赋值、初始化、输入、输出4.结构体数组的操作。内容(方法、步骤、要求或考核标准)一、实训设备与工具个人计算机,Windows 操作系统,Turbo C 或 VC+编译开发环境二、实训步骤、方法与要求1 定义一个结构体数组,存放 10 个学生的学号,姓名,三门课的成绩。2 从键盘输入 10 个学生的以上内容。3 输出单门课成绩最高的学生的学号、姓名、以及该门课程的成绩。4 输出三门课程的平均分数最高的学生的学号、姓名及其平均分。5 将 10
7、 个学生按照平均分数从高到低进行排序,输出结果,格式如下所示:number name math Chinese English average103 tom 90 90 100 95101 alice 90 80 70 80 要求:函数原型为 sort(int a,int n, char style), 将 n 个学生成绩从高到低排名,排名方式根据 sort()函数的style 参数进行,如 style 为a按升序排,style 为d按降序排(a:ascending 升,d:descending 降) 。6. 在项目报告中画出程序流程图,说明程序设计的算法,附主要程序段。7. 在项目报告中说明
8、知识点。8. 在项目报告中说明程序设计过程中的难点、解决办法及编程小结或体会。三、评分方法1.程序按照每一步骤是否实现分别给 5,5,15,20,20 分。2.项目报告中,流程图和算法描述(15 分) ,知识点描述(15 分) ,难点及解决办法或体会(5 分)项目编号 C003 项目名称 学生成绩文件管理 训练对象 08 微机 学时 20课程名称 C 程序设计 教 材 C 语言程序设计 (陈立主编)目的1 掌握文件指针的概念和运用2 掌握文件的相关操作:打开、读、写、关闭3 掌握文件的定位操作内容(方法、步骤、要求或考核标准及所需工具、材料、设备等)一、实训设备与工具个人计算机,Windows
9、 操作系统,Turbo C 或 VC+编译开发环境二、实训内容、步骤、方法与要求1一 定义一个结构体数组,存放 10 个学生的学号,姓名,三门课的成绩2一 从键盘输入 10 个学生的以上内容,存入文件 stud.dat,关闭文件3一 打开 stud.dat 文件,将数据读出,查看是否正确写入,关闭文件。4一 打开文件 stud.dat 文件,读出数据,将 10 个学生按照平均分数从高到低进行排序,分别将结果输出到屏幕上和另一文件 studsort.dat 中。5一 从 studsort.dat 文件中读取第 2,4,6,8,10 个学生的数据。6一 在项目报告中画出程序流程图,说明程序设计的算法,附主要程序段。7一 在项目报告中说明知识点。8一 在项目报告中说明程序设计过程中的难点、解决办法及编程小结或体会。三、计分方法1.程序按照每一步骤是否实现分别给 5,10,10,20,20 分。2.项目报告中,流程图和算法描述(15 分) ,知识点描述(15 分) ,难点及解决办法或体会(5 分)成绩评 语教师签字 高丽 日期 2010-6-20学时 25学生姓名 学号 班级 组别项目编号 项目名称实训(实验)报告1 说明程序编制要点,以及自己在项目制作中的难点及解决办法2说明项目中所涉及的知识点及难点3附录源程序