当前位置:文档之家› 《C语言程序设计》课程设计任务书for 2014

《C语言程序设计》课程设计任务书for 2014

《C语言程序设计》课程设计任务书

一、实验目的

C语言是一种编程灵活,特色鲜明的程序设计语言。C语言除了学习必须的基本知识,如概念,方法和语法规则之外,更重要的是进行实训,以提高学习者的动手和编程能力,这是学习语言的最终目的。结合多年来的教学经验,根据学生的学习情况,为配合教学过程,使“项目教学法”能在本质上促使学生有更大进步,特编写了该《C语言程序设计任务书》,以在实训过程中给学生提供帮助。达到如下目的:

1.在课程结束之前,让学生进一步了解C程序设计语言的编程功能;

2.让学生扎实掌握C程序设计语言的相关知识;

3.通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识与专业知识有效地结合,更全面系统地了解行业知识。

二、设计要求

根据实验内容的要求自由选定题目。编写程序要求遵循如下基本要求:

●模块化程序设计

●锯齿型书写格式

●必须上机调试通过

三、课程设计报告(按《C语言程序设计课程设计报告》格式要求完成)

1、设计目的

2、总体设计(程序设计组成框图、流程图)

3、详细设计、模块功能说明(如函数功能、入口及出口参数说明,函数调

用关系描述等)。

4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主

要问题及采取的解决措施。

5、源程序清单和执行结果:源程序中应有足够的注释。

四、检查标准

1、学生必须编写可运行的程序,对教师的提问能熟练地当面解释清楚,回

答的问题和程序运行的结果作为评分的主要衡量标准;(课程设计当周

的周三开始逐一检查)

2、按照本文后要求须提交电子内容的清单提交相关内容。

五、实验内容

(1) 基础部分(以下10题,任选6题,多做酌情加分)

①掷骰子游戏:

两人玩骰子,游戏规则如下:

1)两人轮流掷骰子,每次掷两个,每人最多掷10次。

2)将每人每次的分值累加计分

3)当两个骰子点数都为6时,计8分;当两个点数相等且不为两个

6时,计7分;当两个点数不一样时,计其中点数较小的骰子的

点数。rand()%6+1

4)结束条件:当双方都掷10次或经过5次后一方累计分数多出另一

方的30%及以上。最后显示双方分数并判定优胜者。

②射击游戏:

符号,要求游戏者输入一个1-80*立即从屏幕底端

符号,则游戏者获胜;若没有撞上,则要求再输入一个整数,共允许输入5次,如果一直没有撞上,则认为游戏者输。

提示:

1)符号可以采用printf("%c",'\1')

2)*号;以循环的方式增加

延时(for(i=0;i<100000;i++););system("cls")清屏重新绘制*号。

③计算存款本息之和:

以“存款利率”为关键字上网搜索目前我国整存整取不同期限我国的银行存款利率,只计算一年、三年和五年三种期限。

问题:

1) 要求输入存钱的本金和期限,求到期能从银行得到的利息与本金

合计。

2)假设存款期限为三十年本金为10万,比较一年、三年和五年滚存

三十年后的本息金额。

④肇事逃逸:

某部闽DT的出租车交通肇事逃逸,现场无人看清后面的四位数字,但三位目击群众提供信息如下:AABB

1) 车牌号后两位相同;

2) 车牌号前两位相同;

3) 车牌号是一个整数的平方。

FOR(I=0;;)

FOR(A=0;;)

For(b=0;;)

If(I*i==B+B*10+A*100+A*1000)

请编程查出肇事逃逸车辆的车牌号。

⑤礼炮:

鸣放礼炮起源于英国。据说400多年前英国海军用的是火炮。当战舰进入友好国家的港口之前,或在公海上与友好国家的舰船相遇时,为了表示没有敌意,便把船上大炮内的炮弹统统放掉,对方的海岸炮舰船也同样做以表示回报。这种做法以后就逐渐成为互致敬意的一种礼仪。由于当时

最大的战舰装有大炮21门,所以鸣炮21响就成了一种最高礼节。

有四艘战舰ABCD开始鸣放礼炮各21响,已知A战舰每隔5秒放一次,B战舰每隔6秒放一次, C战舰每隔7秒放一次, D战舰每隔8秒放一次.假设各炮手对时间掌握非常准确,请问观众共可以听到几次礼炮声?

⑥PK赛:

课程设计的老师想找出班上最优秀的程序“猿”。老师想出了两两PK这样的好方法。在每一轮比赛中,学生都是成对的,两两比赛。输者将被淘汰,赢者将自动晋级到下一轮比赛中。比赛一直进行到只剩一个人为止,这个人就是冠军。

在一轮比赛中,如果学生人数不是偶数,那么将随机选择一个学生自动晋级下一轮,而其它人还是一对一地完成本轮比赛。老师想知道要找到最优秀的程序“猿”需要进行多少轮比赛。

例如:输入:15

输出:4

Do

{

If (a%2==0)

A=a/2;

Else

A=a/2+1;

}while(a==1);

⑦排考场座位问题:

假设考场有8×8的座位,每当一个考生进入考场就为他安排座位。

主界面如下:

请输入选项(1-4)

1设定考场座位

2取消考场座位

3显示某座位考生信息

4查找学生座位

1)选择1,用户输入准考证号,随机产生该学生座位的行号和列号,

要求一个考生只有一个座位,已有考生的位置上不能再安排新的

考生;

2)取消某人的考场座位;

3)输入行号列号,输出该考生的准考证号;

4)输入某学生的准考证号,输出该学生的座位。

⑧大优惠:

中国移动推出最新的手机资费优惠方案,按照这个方案Tom的手机每天消费1元,每消费K元就可以获赠1元,一开始Tom有M元,问最多可以用多少天?

输入的测试数据为一行,实例包括2个整数M, K(2 <= K <= M <= 1000)。

输出一个整数,表示M元可以用的天数。

⑨金币:

国王用金币奖励他忠诚的侍从。第一天侍从工作结束后,国王奖励了他一个金币;接着的两天侍从工作中(第二天,第三天)的每一天,国王奖励了他两个金币;接着的三天侍从工作中(第四天,第五天,第六天)的每一天,国王奖励了他三个金币;接着的四天侍从工作中(第七天,第八天,第九天,第十天)的每一天,国王奖励了他四个金币。这种奖励的模式将是固定不变的,即在N天侍从工作中的每一天,国王将奖励他N个金币;接着的N+1天的侍从工作中的每一天,国王将奖励他N+1个金币。

要求在给定的天数时,你的程序能够统计国王总共奖励了侍从多少金币。

⑩缩印

你想把一张560×400的图像放到一张216×280的页面中,并且要使图像最大,你会怎么做?你可以将图像旋转90度,然后压缩50%,图像现在的大小变为200×280。这样就可以放入页面中!

1)输入:输入数据包含四个用空格隔开的正整数A,B,C和D,表示图像

大小是A×B,页面大小是C×D。所有的数据都小于1000。

2)输出:如果图像不需要压缩(可能需要旋转)则输出100%。如果图像

需要被压缩则输出最小压缩比(可能需要旋转)。我们假定没有图像会被压缩到1%以下,所有结果为一个整型的百分比,从1%到100%。

(2) 提高部分(前面内容完成情况下,课程设计成绩增加10-20分。)

实现一个提供打字和测试打字速度的测试环境,在windows系统下运行,测试时提供4套试卷供选择,当输入的字符达到试卷内容中的字符数后,测试停止,根据学生打字的实际情况和试卷中的原内容比较计算学生测试的正确率。

系统具有试卷管理功能。当试卷内容经过测试练习已完全掌握后,可以选择修改的试卷进行修改其内容。

对于测试成绩系统也提供相应的管理,用户可以查看测验城西排行榜中的成绩,并可清楚排行榜中分数开始新一轮记分。当测验开始时会提示用户榜首信息;当测验结束时能够判断用户的成绩是否达到入榜条件。排行榜中共有5条测验记录,如有用户达到入榜条件,则会将成绩最差者挤出排行榜。

程序流程图:

提交电子资料(提供文档质量共20分,若不按要求提交,指导教师可不提供考核分数):

由以下三个部分组成,缺一不可,提交的电子内容放在一文件夹中,文件夹名要求按照“学号+姓名”起名(要求完整学号)。

1.源程序:学生按照课程设计的具体要求开发的所有源程序应该放到一个文件夹中(文件名要求按照"学号+姓名+C课程设计源程序"起名并压缩成rar文档,压缩后文件名为:" ***01+张三+C课程设计源程序.rar" ),文件夹中只需要存储“题目名.cpp”;

2.课程设计报告:(保存在word 文档中,文件名要求按照"学号+姓名+C课程设计报告"起名,如文件名为:" ***01+张三+C课程设计报告.doc" )按照课程设计的具体要求建立的功能模块,每个模块要求按照如下几个内容认真完成。

提交报告的主要内容(每个选题):

掷骰子游戏

一、设计内容

两人玩骰子,游戏规则如下:

1) 两人轮流掷骰子,每次掷两个,每人最多掷10次。

2) 将每人每次的分值累加计分

3) 当两个骰子点数都为6时,计8分;当两个点数相等且不为两个6时,计7分;当两个点数不一样时,计其中点数较小的骰子的点数。

4) 结束条件:当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上。最后显示双方分数并判定优胜者。

二、方案设计与论证

对设计目标进行总体分析,说明要采用的基本思路。说明完成本题的完整过程。

三、程序运行结果(截图)

四、心得体会

主要说明程序调试中发现的问题和解决办法,包括你学到了什么,哪里遇到了困难,解决的办法,可能但因时间关系没有来得及完成的想法,今后的目标等。

五、参考资料与致谢

要列出在完成设计中查看过并有所利用的所有参考资料

如果你参考了同学的程序,要真诚地表示感谢。

六、源程序

相关主题
文本预览
相关文档 最新文档