c语言程序设计课程设计 1.docx
- 文档编号:6346703
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:8
- 大小:43.49KB
c语言程序设计课程设计 1.docx
《c语言程序设计课程设计 1.docx》由会员分享,可在线阅读,更多相关《c语言程序设计课程设计 1.docx(8页珍藏版)》请在冰豆网上搜索。
c语言程序设计课程设计1
《C语言程序设计》课程设计(实训)提纲
一、意义和目的
C语言是计算机应用、计算机网络及相关专业的重要专业基础课。
通过C语言课程的学习,培养学生逻辑思维和程序思路,为后续课程奠定基础。
学生通过对C语言的学习,已经具备了使用C语言编写简单的应用程序的能力。
为了加强程序设计能力,通过课程设计(实训),使学生对C语言有更全面的理解,进一步提高运用C语言编程解决实际问题的能力,同时,为后续课程的学习夯实基础。
课程设计目的:
1.提高用程序设计解决实际问题的能力。
2.通过提出算法、制定输入输出来设计一个解决方案。
3.用C语言合理的开放的简洁有效的程序代码来实现该设计。
4.测试程序是否工作且满足设计指标并评价其效率。
二、目标
本课程设计的目的是使学生应能在以下几方面得以提高:
A、分析问题。
各种简单的与计算机有关的案例中所需要的输出结果,把大问题分解成小问题,使用自顶向下或类似设计方法给出模块化或计划。
B、提出算法执行特定任务。
模块表示为算法,使用自顶向下或伪代码等设计手段将模块细化成更详细的成分,清楚的表明顺序、选择和重复等到控制结构。
C、把一个算法变为用C语言编写的结构化程序。
D、把合适的测试方法检查程序是否符合最初的要求,为不合适数据设计错误陷阱,并提供错误信息来帮助用户。
E、写出清晰的用户文档,确保用户或者通过遵循程序中的指示或者使用程序设计者编写的文档功能的运行程序。
F、写出技术文档,对程序中主要标识符的含义或作用加以说明,并提供一个完整的程序流程图。
G、调试程序、测试数据过程成功。
三、要求
参加本课程设计的学生,应当认真完成本课程设计的全部过程,并以最终课程设计成果来证明其独立完成各种实际任务的能力。
从而,反映出理解和运用本课程知识的水平和能力。
完成课程设计后应提交实训报告:
(格式附后)
四、选题:
第一题每六人一小组,第二题一人一组自拟题目。
第一题:
学生成绩管理系统
【问题描述】
实现对学生成绩录入、查询、计算、排序、修改的基本功能。
各模块要求如下:
1、菜单设计:
本子系统实现显示功能,即显示成绩管理系统的进入界面,用户可以通过界面进行菜单选择,选择要进入的模块。
2、信息录入:
本子系统实现多个学生的基本信息的录入,可以录入任意个学生的基本信息。
但是录入学生的基本信息只包括学号,姓名,班级和4门课的成绩。
3、成绩计算:
计算平均分和总分,并且显示所有学生的基本信息。
4、成绩排序:
按照平均分对录入的学生信息进行排序,并且显示排序后的学生基本信息。
5、信息查找:
根据姓名查找学生的基本信息,并且显示找到的学生信息。
每查找完一个学生的基本信息后,由系统提示是否继续查找。
6、信息修改:
对学生的成绩进行修改,如果修改了成绩,必须自动完成学生平均分和总分的修改。
同时按照平均分重新排序,最后将学生的最新信息显示出来。
【实现提示】:
(1)对于子模块1主要采用顺序结构,在实现菜单选择时要使用多分支的选择语句。
(2)对于子模块2需要重点考虑如下问题:
①如何控制是否继续录入学生的基本信息。
②由于有多门成绩的录入,如何通过循环来实现录入。
(3)对于子模块3做如下提示:
①由于要主算所有学生的总分和平均分,如何使用循环来求所有录入学生的总分和平均分。
②在这个模块中要显示所有学生的信息,思考以什么样的版式来显示学生信息。
(4)对于子模块4做如下提示:
①理解冒泡排序法,思考如何按照平均分对学生信息进行排序。
②由于学生信息的排序不仅涉及平均分,还包括其他学生的学生数据:
姓名,学号,4门成绩和总分。
如何交换所有的数据。
(5)对于子模块5做如下提示:
①按照姓名查找学生的信息必须将要查找的姓名和所有录入的学生姓名一一匹配,提示(strcmp函数)。
②如果没找到应该怎么处理?
是否需要提示。
③如何实现要持续查找。
(6)对于子模块6做如下提示:
①不是所有的学生成绩都需要修改,可以先按照姓名来查找一个学生,然后再修改这个学生的成绩。
②修改学生的成绩后是否需要重新计算这个学生的总分和平均分?
是否需要重新对学生的信息按照平均分来排序。
③如何实现可持续修改学生的成绩。
第二题:
题目自拟。
(参考后面题目)
五、评价
评价是检测学生理解问题和解决问题能力的一个重要手段,教师将根据学生提交的实训报告,严格检查以下各项任务完成情况:
1、问题或任务陈述(描述问题,而且问题是合理原始的、应当包括输入、输出及其预期范围。
)是否正确。
2、问题的解决方案采取有顶向下设计的形式,使整个解决方案划分成若干模块。
3、程序完成后的代码应当加以注解,最少应清楚指出每一个模块。
4、用于检查程序的测试数据,或者对一个控制程序给出测试的例程。
5、程序顺利执行,结果正确。
6、实训报告。
参考题目
1、编制一个计算器程序
【问题描述】
编写一个计算器程序,实现加、减、乘、除、求平方根(正数)、倒数等功能。
【实现提示】
(1)要求根据用户从键盘输入的表达式:
操作数1运算符op操作数2。
计算表达式的值,指定的算术运算符为加(+)、减(-)、乘(*)、除(/)等。
(2)要求程序能进行浮点数的算术运算。
(3)如果要求输入的算术表达式中的操作数和运算符之间可以加入任意多个空白符,那么程序如何修改?
(4)程序要求可以连续做多次算术运算,每次运算结束后,程序都给出提示:
Doyouwanttocontinue(Y/Nory/n)?
用户输入Y或y时,程序继续进行其他算术运算;否则程序退出运行状态。
【测试数据】如下图所示:
(可参考)
2、身高预测
【问题描述】
每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯和体育锻炼情况等。
小孩成人后的身高与其父母的身高和自身的性别密切相关。
身高预测公式为:
男性成人时身高=(父身高+母身高)*0.54(cm)
女性成人时身高=(父身高*0.923+母身高)/2(cm)
此外,如果喜爱体育锻炼,那么可增加身高2%;如果有良好的卫生饮食习惯,那么可增加身高1.5%。
【实现提示】
1输入:
性别、父母身高、是是否喜爱体育锻炼、是否有良好的饮食习惯。
2输出:
身高。
3处理:
利用给定公式和身高预测方法对身高进行预测。
4判断条件:
性别男还是女、是否喜爱体育锻炼、是否有良好的饮食习惯。
【测试数据】
以自己为例进行预测。
3、单词统计
【问题描述】统计某篇英文小数中某些单词的出现次数。
【实现提问】英文小说存储在一个文本文件中。
待统计的词汇集合要一次输入完毕,及统计工作必须在程序的一次运行之后全部完成。
输出的每个单词的出现次数。
约定小说中的词汇一律不跨行,这样每从文本文件中读入一行,就统计每个单词在这行中出现的次数,直到文件结束。
要求在程序运行时才输入文本文件名和要统计的词汇。
【测试数据】
以C语言源程序模拟英文小说。
统计某些保留字(如:
if、else、for、while等)的出现次数。
4.电子万年历
【问题描述】
输入任意年份在屏幕上显示出该年份中月份对应的日期和星期,功能要求:
(1)输入任一年将显示出该年的所有月份日期,对应的星期
(2)注意闰年情况
【实现提示】
(1)要输入任一年显示出该年的所有月份日期,应该先设计具体的输出格式,如下:
thecalendaroftheyear2008.
January
SunMonTueWedThuFriSat
12345
6789101112
13141516171819
20212223242526
2728293031
(2)判断是不是闰年(year%4!
=0||year%100==0&&year%400!
=0)满足条件就是平年,把一年中的所有月份分为四类(28,29,30,31)。
(3)求出一年中的第一天是周几(year+(year-1)/4-(year-1)/100+(year-1)/400)%7。
(4)用指针数组存放十二个月的英文和星期的英文缩写。
(5)用FOR循环输出各月份的日历
【测试数据】
自定模拟数据
4、学生信息录入和显示
【问题描述】
学期考试结束,实现学生基本信息的录入,录入学生的基本信息包括学号,姓名,班级和4门课的成绩。
输入和处理过的信息要能够按照一定的格式显示出来。
【实现提示】
首先需要有”是否需要输入信息的”界面提示,程序的功能主要包括2方面:
(1)若输入”y”在界面应当不断提示需要录入的信息.等待录入。
(2)若输入”n”则显示出所录入的当前信息。
注意输入和输出时的数据格式。
【测试数据】参照如下:
7、一个用于医院门诊候诊的队列管理程序
【问题描述】
要求采用先来先就诊的排队方式(就诊顺序与挂号单编号无关),假设挂号时编码是连续的,但由于同一个门诊科目有3个诊室,其中35(含35)岁以上的在第一诊室,35岁以下的男患者进第二诊室,其它的进第三诊室,程序启动后显示下列菜单:
【实现提示】
1——挂号
2——叫号
3——分诊室
4——显示各诊室队列信息
5——统计当天就真的患者情况(要求按性别进行统计和按任意年龄区段进行统计)
6——结束程序
选1时,提示用户在一行内输入姓名及挂号单编号
XX文库-让每个人平等地提升自我选2时,显示排在队列中第一位患者姓名、挂号单编号,并将其从挂号序列中删除
选3时,进行诊室分配
选4时,按队列顺序显示个诊室排队人的姓名、挂号单编号及所在诊室
选5时,进行两种统计方法的选择,并进行必要的统计计算
选6时,退出程序的运行
要求1-5中每一个步骤完成后都能显示此选择菜单
【测试数据】
自拟定
附:
实训报告:
C语言课程设计实训报告
专业:
班级:
学生姓名:
指导教师:
设计题目:
第一页
1、设计题目第--------页
2、设计目的第--------页
3、设计内容第--------页
4、总体设计第--------页
5、详细设计第--------页
6、心得体会第--------页
7、参考文献第--------页
7、程序清单第--------页
第二页
六、准备答辩
设计完成后,应做好答辩的准备,能分析设计的优、缺点发现今后在设计中应注意的问题,总结初步掌握的设计方法和步骤,进一步把不懂的或尚未考虑到的问题弄懂,以取得更大的收获。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c语言程序设计课程设计 语言程序设计 课程设计