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语言程序设计任务书》,以在实训过程中给学生提供帮助。
达到如下目的:
1. 在课程结束之前,让学生进一步了解c程序设计语言的编程功能;
2. 让学生扎实掌握c程序设计语言的相关知识;
3. 通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识与专业知识有效地结合,更全面系统地了解行业知识。
二)设计要求。
根据实验内容的要求自由选定题目。编写程序要求遵循如下基本要求:
模块化程序设计。
锯齿型书写格式。
必须上机调试通过。
三)课程设计报告(按《c语言程序设计课程设计报告》格式要求完成)
1、设计目的。
2、总体设计(程序设计组成框图、流程图)
3、详细设计、模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)。
4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施。
5、源程序清单和执行结果:源程序中应有足够的注释。
四)、检查标准。
1、学生必须编写可运行的程序,对教师的提问能熟练地当面解释清楚,回答的问题和程序运行的结果作为评分的主要衡量标准;(课程设计当周的周三开始逐一检查)
2、按照本文后要求须提交电子内容的清单提交相关内容。
二、方案实现与调试。
2.1掷骰子游戏(注,此题目用了两种方法,方法一:一般的main函数方式;方法二:加入函数分模块的方式。**见附录)
2.1.1 题目内容的描述
两人玩骰子,游戏规则如下:
1) 两人轮流掷骰子,每次掷两个,每人最多掷10次。
2) 将每人每次的分值累加计分。
3) 当两个骰子点数都为6时,计8分;当两个点数相等且不为两个6时,计7分;当两个点数不一样时,计其中点数较小的骰子的点数。
4) 结束条件:当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上。最后显示双方分数并判定优胜者。
2.1.2输入数据类型、格式和内容限制和输出数据的说明。
1)数据类型:整型;2)内容限制:随机数的产生;
3)输出数据:获胜一方。
2.1.3主要模块的算法描述
1) 程序流程图如下:
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次,如果一直没有撞上,则认为游戏者输。
提示:1)输入符号可以采用printf("%c",'1')
2)显示*号向上移动:输出一些空行;输出*号;以循环的方式增加延时(for(i=0;i<100000;i++)clrscr()清屏重新绘制*号。
2.2.2输入数据类型、格式和内容限制和输出数据的说明。
1)数据类型:整型、长整型;2)内容限制:键入数字。
3)输出数据:挑战成功还是失败获胜一方;4)system(“cls”),清屏。
2.2.3主要模块的算法描述
1)程序流程图
2)简单的语言描述:
清屏;然后循环每行输出*;依次循环,判断是否击中目标;5次输入结束,或者击中目标结束。
2.2.4调试过程及实验结果。
1)调试过程遇到的问题与解决方案:
在首次写完**之后,运行发现无法将图形置于屏幕第一行,之后查阅资料发现是**控制不够完整,而后添加**修改成功!
2)实验结果如下:
2.3计算存款本息之和。
2.3.1 题目内容的描述
以“存款利率”为关键字上网搜索目前我国整存整取不同期限我国的银行存款利率,只计算一年、三年和五年三种期限。
问题:1) 要求输入存钱的本金和期限,求到期能从银行得到的利息与本金合计。
2)假设存款期限为三十年本金为10万,比较一年、三年和五年滚存三十年后的本息金额。
2.3.2输入数据类型、格式和内容限制和输出数据的说明。
1)数据类型:长整型;2)内容限制:键入本金与年限;
3)输出数据:本息和pi
2.3.3主要模块的算法描述
1)1)程序流程图如下:
2)语言描述如下:
输入限定之内的年份与存款金额,选择对应的年利率计算本息和。
2) 1) 程序流程图如下。
2)语言描述如下:
存款期限为三十年,本金为10万,分别计算一年、三年和五年滚存三十年后的本息金额,然后进行比较,输出分别输出一年、三年和五年滚存三十年后的本息金额和最大的本息额。
2.3.4调试过程及实验结果。
1)调试过程遇到的问题与解决方案:
1)在初次编程中,将本金,年份定义成int型,在后来的测试过程中发现不合适,因为年利率有多个小数点,最终更正用float定义!
2)在写**时,部分**忘记标下标,导致结果如下,第一次修改时将float改成double未能成功,而后检查后运行正确!
2)实验结果如下:
2.4肇事逃逸。
2.4.1 题目内容的描述
某部闽dt的出租车交通肇事逃逸,现场无人看清后面的四位数字,但三位目击群众提供信息如下:
1) 车牌号后两位相同;
2) 车牌号前两位相同;
3) 车牌号是一个整数的平方。
请编程查出肇事逃逸车辆的车牌号。
2.4.2输入数据类型、格式和内容限制和输出数据的说明。
1)数据类型:整型;2)内容限制:前两位相同,后两位相同,整数的平方;
3)输出数据:四位整数。
2.4.3主要模块的算法描述
2) 程序流程图如下:
2)语言描述如下:
前两位,后两位相同,则前两位用i表示,后两位用均表示,用k是100以内的两位整数,l表示这个四位数,用循环语句依次判断结果适合公式:k*k=l=1000*i+100*i+10*j+j,即为肇事车牌号!
2.4.4调试过程及实验结果。
1)调试过程遇到的问题与解决方案:
书写**时,定义四位车牌号为l,由于字母l与数字1比较像,结果导致混淆,在vc环境运行后,发现错误,及时改正!在以后,将尽量少使用字母l来定义变量!
2)实验结果如下:
2.5礼炮。
2.5.1题目内容的描述
鸣放礼炮起源于英国。据说400多年前英国海军用的是火炮。当战舰进入友好国家的港口之前,或在公海上与友好国家的舰船相遇时,为了表示没有敌意,便把船上大炮内的炮弹统统放掉,对方的海岸炮舰船也同样做以表示回报。
这种做法以后就逐渐成为互致敬意的一种礼仪。由于当时最大的战舰装有大炮21门,所以鸣炮21响就成了一种最高礼节。
有四艘战舰abcd开始鸣放礼炮各21响,已知a战舰每隔5秒放一次,b 战舰每隔6秒放一次, c战舰每隔7秒放一次, d战舰每隔8秒放一次。假设各炮手对时间掌握非常准确,请问观众共可以听到几次礼炮声?
2.5.2输入数据类型、格式和内容限制和输出数据的说明。
1) 数据类型:整型;2)内容限制:题目依据;
3) 用到的主要语句:循环条件判断;4)输出数据:礼炮声(整型)。
2.5.3系统主要模块的算法描述
1)程序流程图如下:
2) 简要的语言描述如下:
根据条件“a战舰每隔5秒放一次,b 战舰每隔6秒放一次, c战舰每隔7秒放一次, d战舰每隔8秒放一次。”确定可能性!依次判断,累计听到的次数,得出结果!
2.5.4调试过程及实验结果。
1) 调试过程遇到的问题与解决方案:
发现定义变i是与int之间没有空格,导致结果如下,调试修改正确。
2) 实验结果如下:
2.6汽车加油。
2.6.1题目内容的描述
c语言课程设计报告 课程设计报告
周口师范学院。课程设计报告。院 系 计算机科学与技术学院 班级。学生姓名学号。设计题目 职工工资管理系统。完成日期 年月日 课程设计任务书。设计题目 工资管理系统 教研室主任指导教师 年月日。摘要11设计内容 任务及具体要求2 1.1设计内容2 1.2设计任务及具体要求2 2概要设计3 2.1该系统...
C语言课程设计报告
华中科技大学计算机科学与技术学院。题目 专业 班级 学号 姓名 成绩 指导教师 完成日期 2016年月日。目录。一 系统需求分析 1 二 总体设计 2 三 数据结构设计 3 四 详细设计 4 五 系统实现 5 六 运行测试与结果分析 6 七 总结 7 八 参考文献 8 九 指导教师评语 9 对所要解...
C语言课程设计报告
c语言。课程设计。商业销售管理系统。学号 121407210 姓名 宋军。班级 软件1202 指导老师 邹姝稚。成绩 2013年6月。一 任务描述。编写一个商品销售管理系统,是其能够拥有商品买卖和库存管理功能。在顾客选购时,需给出输入商品名称,或商品型号,或选择列表进而输入商品编号三种选择,在顾客选...