C语言课程设计报告
《C语言程序设计》
课程设计报告
(学年 第 学期)
专 业:
班 级:
姓名学号:
姓 名:
指导教师:
成 绩:
目 录
一、课程设计的目的与要求………………………………………1
二、方案实现与调试 ……………………………………………1
2.1 掷骰子游戏…………………………………………………1
2.2 射击游戏……………………………………………………3
2.3 计算存款本息之和……………………………………………5
2.4 肇事逃逸……………………………………………………8
2.5 礼炮…………………………………………………………10
2.6 汽车加油……………………………………………………12
2.8大优惠………………………………………………………13
2.9 金币…………………………………………………………15
三、课程设计分析与总结…………………………………………17
附录 程序清单…………………………………………………17
一、课程设计的目的与要求
(一)实验目的
C语言是一种编程灵活,特色鲜明的程序设计语言。C语言除了学习必须的基本知识,如概念,方法和语法规则之外,更重要的是进行实训,以提高学习者的动手和编程能力,这是学习语言的最终目的。结合多年来的教学经验,根据学生的学习情况,为配合教学过程,使“项目教学法”能在本质上促使学生有更大进步,特编写了该《C语言程序设计任务书》,以在实训过程中给学生提供帮助。达到如下目的:
在课程结束之前,让学生进一步了解C程序设计语言的编程功能;
让学生扎实掌握C程序设计语言的相关知识;
通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识与专业知识有效地结合,更全面系统地了解行业知识。
(二)设计要求
根据实验内容的要求自由选定题目。编写程序要求遵循如下基本要求:
模块化程序设计
锯齿型书写格式
必须上机调试通过
(三)课程设计报告(按《C语言程序设计课程设计报告》格式要求完成)
1、设计目的
2、总体设计(程序设计组成框图、流程图)
3、详细设计、模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)。
4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施。
5、源程序清单和执行结果:源程序中应有足够的注释。
(四)、检查标准
1、学生必须编写可运行的程序,对教师的提问能熟练地当面解释清楚,回答的问题和程序运行的结果作为评分的主要衡量标准;(课程设计当周的周三开始逐一检查)
2、按照本文后要求须提交电子内容的清单提交相关内容。
二、方案实现与调试
2.1掷骰子游戏(注,此题目用了两种方法,方法一:一般的main函数方式;方法二:加入函数分模块的方式。代码见附录)
?2.1.1 题目内容的描述
两人玩骰子,游戏规则如下:
两人轮流掷骰子,每次掷两个,每人最多掷10次。
将每人每次的分值累加计分
当两个骰子点数都为6时,计8分;当两个点数相等且不为两个6时,计7分;当两个点数不一样时,计其中点数较小的骰子的点数。
结束条件:当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上。最后显示双方分数并判定优胜者。
?2.1.2输入数据类型、格式和内容限制和输出数据的说明
1)数据类型:整型;2)内容限制:随机数的产生;
3)输出数据:获胜一方。
?2.1.3主要模块的算法描述
程序流程图如下:
2)语言描述如下:
此题目主要运用了循环语句。首先用随机数产生器产生产生玩家投骰子的点数;
接下来根据点数计算玩家的分;接下来判断投掷的次数是否达到5次是的话比较一方的累计分数是不是在另一方的1.3倍以上,是的话则胜利,否的话继续投掷!
?2.1.4调试过程及实验结果
1)调试过程遇到的问题与解决方案:
没能正确理解“当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上”这句话的意思,以为是满五或者满十的时候带累计总分一次然后比较分数,确定获胜方!所以将“if(i>=6)”z这个语句写成了“if(i==6)”,在后来的调试过程中发现,及时改正了!
2)实验结果如下:
2.2射击游戏
?2.2.1题目内容的描述
在程序运行时屏幕上方第一行随机出现一个 符号,要求游戏者输入一个1-80之间的整数,当用户输入一个整数后,一个*立即从屏幕底端的该整数列向上移动,若移动到屏幕的顶端能撞上 符号,则游戏者获胜;若没有撞上,则要求再输入一个整数,共允许输入5次,如果一直没有撞上,则认为游戏者输