- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言设计报告方案
浙江万里学院
集中实践课程报告
课程名称: C程序设计实践
系 别:
专业班级: 姓名: 学号:
起止日期: 2012年9月3日-2012年9月14日
1 实践主要内容
1.1 :绘制余弦曲线和直线的叠加问题。要求cos(x)曲线与直线f(x)=45*(y-1)+31的迭加图形。cos(x)用“*”表示,f(x)用“+”表示,在两个图形相交的点上则用f(x)图形的符号。
1.2:搬山游戏问题。要求设计程序,输入山的总数(n)和每次允许搬山的最大数(k)。再输入需要搬走山的数目,打印出要搬多少座山,并提示尚剩余多少座山。双方轮流搬山直到最后一座山搬完为止。
2 练习完成情况
2.1典型题目分析
绘制余弦曲线和直线的叠加问题分析:该题要利用坐标系和直线和余弦曲线的关系编写函数。关键是要在分别计算出同一行中两个图形的列方向点坐标后,正确判断相互的位置关系。
搬山游戏问题分析:解决这类问题的基本方法是先进行分析,找出游戏对弈的规律性,然后让计算机按照游戏的规则,模拟人进行游戏。
2.2疑难解析
绘制余弦曲线和直线的叠加问题分析:该题考核坐标系上直线和余弦曲线的表示和循环语句的嵌套。疑点一:怎样编写曲线与直线在坐标系上的坐标?疑点二;怎样在各点打印出相应的符号?
两个疑点,都要通过循环结构来设计。前者须控制循环变量(即行方向)不变,求出对应的直线与曲线的横坐标。再通过循环求出各个行方向上所对应的两线的横坐标,表示以y为变量的余弦曲线和直线方程。后者用控制循环变量(即列坐标),利用if语句,判断输出的符号。
搬山游戏问题分析:该题考核算法,计算机每次搬山应遵循如下原则:
1) 当:剩余山数目-1=可移动的最大数k时,计算机要移(剩余山数目-1)座,以便将最后一座山留给人。 2)对于任意正整数x,y,一定有:0=x%(y+1)=y。为留下最后一座山,又要控制每次搬山数不超过最大数,要满足(n-1)%(k+1)。若结果为0,即整除无余数,则规定只搬1座山,以防止冒进后发生问题。
3 综合设计
3.1分析
3.1.1 题目
1. 绘制余弦曲线和直线的叠加问题分析:显示余弦曲线和直线的叠加图形。
.
2.有n座山,计算机与人轮流搬山。每次搬山不超过k座,谁搬最后一座谁输。首先输入山的总数和每次允许搬山的最大数。再输入需要搬走的山的数目,打印出要搬多少山,并提示尚剩余多少山。直至最后山搬完为止。最后显示赢家,询问是否继续。若否,则统计局数和胜负。
3.1.2功能目标
绘制余弦曲线和直线的叠加:利用坐标系和直线和余弦曲线的关系编写函数计算出同一行中两个图形的列方向点坐标输出相应的符号。
搬山游戏:找出游戏对弈的规律性,按照游戏的规则,设计算法,编写程序,最终统计出共玩了多少局,双方胜负如何。
3.1.3运行环境 3.1.4开发工具
WINxp C-Free3.5
3.2设计
绘制余弦曲线和直线的叠加设计:须知坐标系,21个行坐标,63个列坐标。首先应对第一个行坐标进行计算,并在一行中打印图形。即yy=0,屏幕行坐标为y=0.1*yy,再利用m=acos(1-y)*10和n=45*(y-1)+31y求出曲线和直线上所对应的横坐标m,n。
接着利用循环结构for(x=0;x=62;x++),用if语句将该行每个横坐标输出相应的符号。如果屏幕坐标x=n 或者x=mx=n,那么在屏幕上显示的就是“+”,如果屏幕坐标x=m, 那么在屏幕上显示的就是“*”,否则就用“ ”代替。
结构图
搬山游戏设计;
首先输出提示语句,再输出How many mountains are there,对n赋值。若n不为0,则同理对k赋值,满足Kn||k1时,再输出对x赋值。当满足x1||xk||xn时,计算剩下的值再输出There are %d mountains left now对值进行判断。若为0,则输出I win. You are failure,反之用y=(n-1)%(k+1),求出最佳搬山数,并输出。再计算剩余n并输出。判断n的值,若不为0,返回上步。反之输出I am failure. You win。接着重新循环下一局,询问是否要继续比赛。若否,则输出玩的次数以及得分和Game over!
3.3 详细设计
1绘制余弦曲线和直线的叠加问题;
#includestdio.h
#includemath.h
void main()
{ double y;
int x,m,n,yy;
printf(========This program shows the curve of cos(x)and
文档评论(0)