版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上用户猜测藏物位置程序设计基础课程设计报告专 业: 电子信息工程 班 级: 电信2班 姓 名: 指导教师: 二O 一 二 年 二 月 二十 日目 录1 课程设计目的22 课程设计题目描述和要求2-33 功能模块说明3-44 源文件4-55 课程设计总结56 参考书目61.课程设计目的:通过课程设计了解自己通过一学年的学习C+这门课到底学的怎么样,并将书本上的知识用于实践中,验证自己的学习成果,并进一步发现自己的不足并且改正.2.课程设计题目描述和要求:用户猜测藏物位置:计算机在n行n列(行号为0到n-1,列号为0到n-1)的“棋盘”的某一位置处“藏放一物件”(具体位置通
2、过使用“rand()%10”来随机产生);用户通过输入行列号来“寻找”该物件;若没猜对时计算机要告诉用户与藏放物件的位置有多远(取整后的近似距离)。思考:若没猜对时也可增加告诉用户藏物的方向信息;另外在猜对结束时,还可告诉用户共猜了几次。大致的思路为:1、 为获得藏放某一物件的棋盘,可动态地创建一个二维数组;2、 对创建的二位数组赋初值(所赋的值为1m*n的连续整数);3、 通过随机函数rand()来获取1m*n之间的任一整数,并将值赋给N,N对应棋盘上的一个位置,即储物藏放的位置;4、 通过循环,先找到储物藏放的位置,在提示用户输入猜测的位置,通过比较这两组坐标是否相等,判断用户猜测是否正确
3、;5、 还可以设计一个循环,嵌套在上面的循环里,4中的循环每执行一次,该循环可以提供帮助,告诉用户储物藏放的位置和用户猜测位置之间的距离。6、 在4中,同时还应设计一个循环变量,用以计算用户猜测的次数。3.功能模块说明:1程序运行时,首先提示设置棋盘的行、列;2接下来,用户需输入猜测的位置的行、列,若正确,程序提示一共猜测了几次,若错误,程序告知猜测位置与储物位置之间的距离是多少,帮助用户找到储物3、反复执行2,直到找到储物的位置为止。运行实例:进一步改进:能够添加更多的用于帮助用户的部分:比如, 为了游戏的趣味性,还可以限制猜测的次数。设计一个结构,在猜测的次数到达一定值之后,跳出循环,终止
4、程序。4.源程序:#include<iostream.h>#include<stdlib.h> /用到了随机函数#include<math.h>#include<time.h>int main()int i,j,m,n;cout<<"请设置行、列:"cin>>m>>n;/动态的创建一个二维数组(通过指针数组)int *guess;guess=new int*m;for(j=0;j<m;j+)guessj=new intn;/初始化二维数组for(i=0;i<m;i+)for(j=
5、0;j<n;j+)guessij=i*n+j+1;/通过随机函数,设置箱子的位置 /表示ab的话,a+rand()%(b-a+1)int N;srand(unsigned) time(NULL); /*播种子*/N = rand() % (m*n);/设置一个循环,进行猜词游戏int x,y,z; /z是两坐标之间的距离 int t=1; /t是一个统计变量int a,b; /N的位置for(i=0;i<m;i+)for(j=0;j<n;j+)if(guessij=N)a=i+1;b=j+1;i=m;break;while(1)cout<<"请输入你猜的
6、坐标:"cin>>x>>y;if(x=a&&y=b) break; /距离判断z=(a-x)*(a-x)+(b-y)*(b-y);cout<<"与该物体的距离是:"<<int(sqrt(z)<<endl; /强制数据类型转换if(x>a) cout<<"可能是向左移且"else cout<<"可能是向右移且"if(y>b) cout<<"向下移!"else cout<<&
7、quot;向上移!"cout<<endl;t=t+1;cout<<"恭喜你,你猜对了!一共猜了"<<t<<"次!"<<endl;/撤销二维数组for(i=0;i<m;i+)delete guessi; /一下子撤销一行delete guess;return 0;5.课程设计总结: 在这个课程设计中,我明白了自己在学习中的许多漏洞,在课程设计中许多概念型问题还需要看书解决,说明学习还不够扎实,这门课不是老师教完就完了的,还需要自己经常的上机实验,来步步完善自己的思维,以更熟练的掌握C+的应用。在整个设计中深刻体会到编程者的辛苦,一点点差错将导致严重后果,在整
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 饮水安全监管实践方案讲解
- 辽东学院《基础与临床药理学》2024-2025学年第二学期期末试卷
- 四川卫生康复职业学院《文学名著鉴赏》2024-2025学年第二学期期末试卷
- 石家庄科技信息职业学院《内部控制学》2024-2025学年第二学期期末试卷
- 河北医科大学临床学院《外国女性文学》2024-2025学年第二学期期末试卷
- 山东服装职业学院《水质工程学I(双语)》2024-2025学年第二学期期末试卷
- 湖北中医药高等专科学校《市政工程》2024-2025学年第二学期期末试卷
- 皖江工学院《建筑结构新技术与应用》2024-2025学年第二学期期末试卷
- 重庆人文科技学院《核酸化学》2024-2025学年第二学期期末试卷
- 2026浙江宁波市某机关单位招聘编外人员1人笔试模拟试题及答案解析
- 2026年内蒙古机电职业技术学院单招职业适应性考试题库附答案详解(基础题)
- 山东济宁市2025-2026学年高二上学期期末考试语文试题及参考答案
- 安徽能源集团秋招面试题及答案
- 2026年沈阳职业技术学院单招职业技能测试模拟测试卷附答案解析
- 法院安全保密教育培训课件
- 2026年及未来5年中国城市地铁综合监控系统市场运行态势及行业发展前景预测报告
- 干细胞治疗共济失调的联合用药策略
- 山林共协议书范本
- 小学教师语言文字培训
- 【人卫课件耳鼻喉9版】鼻科学第八章 慢性鼻炎
- 金融控股公司并表管理指引
评论
0/150
提交评论