第14周上机实践项目5——体会棋盘游戏中的数据存储(2)
来源:互联网 发布:cf卡数据恢复软件 mac 编辑:程序博客网 时间:2024/05/18 01:42
问题及代码
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:辛彬 * 完成日期:2014年 12 月 1 日 * 版 本 号:v1.0 * * 问题描述: 按行输出随机二位数组的数据,并求出对角线的数据,按“扫雷”游戏的规则输出相邻格子。 * 输入描述:没有输入。 * 程序输出:随机二位数组的数据,对角线的数据; */#include <iostream>#include <ctime>#include <cstdlib>using namespace std;void setdata(int a[8][8]); //设置随机数void out(int a[8][8]);//输出数组void outDiagonal(int a[8][8]); //输出对角线元素的值void mine(int a[8][8],int x, int y);//按“扫雷”游戏的规则输出相邻格子int main(){ int a[8][8],x,y; setdata(a); out(a); outDiagonal(a); cout<<"输入一个位置:"; cin>>x>>y; mine(a,x,y); return 0;}void setdata(int a[8][8]){ int i,j; srand(time(NULL));//需要用当前时间作“种子”,以便每次运行取得的序列不同 for(i=0; i<8; i++) for(j=0; j<8; j++) a[i][j]=rand()%50+1; return;}//按行序优先输出数组void out(int a[8][8]){ int x,y; for(x=0; x<8; x++) { for(y=0; y<8; y++) { cout<<a[x][y]<<" "; if(a[x][y]<10) cout<<" "; } cout<<endl; }}//输出对角线元素的值(从左上到右下、从右上到左下)void outDiagonal(int a[8][8]){ int x,y; cout<<"对角线元素的值分别为:"<<endl; for(x=0,y=0; x<8; x++,y++) cout<<a[x][y]<<" "; cout<<endl; for(x=0,y=7; x<8; x++,y--) cout<<a[x][y]<<" ";}//按扫雷游戏规则,输出a[x][y]周围的8个数字void mine(int a[8][8],int x, int y){ int i,j,sum=0; cout<<"点"<<x<<","<<y<<"周围的数是:"; for(i=x-1;i<=x+1;i++) for(j=y-1;j<=y+1;j++) if(i>=0&&j>=0&&i<=7&&j<=7&&!(i==x&&j==y)) {cout<<a[i][j]<<" "; sum+=a[i][j];} cout<<endl; cout<<"它们的和为:"<<sum;}
运行结果:
学习感悟:一开始想用大量if语句排除超出范围的数据,但觉得很麻烦,参考了贺老师的代码后才发现可以只用一个if语句屏蔽,我还是经验不够。
0 0
- 第14周上机实践项目5——体会棋盘游戏中的数据存储(2)
- 第14周上机实践项目5——体会棋盘游戏中的数据存储(1)
- 第14周上机实践项目5——体会棋盘游戏中的数据存储(3)
- 第14周项目5-体会棋盘游戏中的数据存储
- 第14周项目 5-体会棋盘游戏中的数据存储
- 第14周项目5 体会棋盘游戏中的数据存储
- 第14周项目5-体会棋盘游戏中的数据存储
- 第14周项目5-体会棋盘游戏中的数据存储
- 第14周项目5-棋盘游戏中的数据存储
- 第14周项目5 体会棋盘游戏的数据存储
- 第14周项目5-体会棋盘游戏的数据存储
- 第十四周项目5-体会棋盘游戏中的数据存储
- 第十四周项目5-体会棋盘游戏中的数据存储
- 第十四周项目5-体会棋盘游戏中的数据存储
- 第十四周项目 5 体会棋盘游戏中的数据存储
- 第十四周项目5:体会棋盘游戏中的数据存储
- 第14周项目5-体验棋盘游戏中的数据存储(2、扫雷游戏+改变数据)
- 第15周-项目6-体会棋盘游戏中的数据存储
- 第14周项目5 体会棋盘游戏的数据存储
- 友盟 插件框架(apf)源码分析
- MacBook刷机勘错篇
- 笨笨图片批量抓取下载 V0.2 beta
- Android进程 与 消息模型
- 第14周上机实践项目5——体会棋盘游戏中的数据存储(2)
- 简析TCP的三次握手与四次分手
- 用日志钩子处理键盘消息时的一个注意事项
- 第十四周项目1
- 人品计算器
- Nutch教程中文翻译1(官方教程,中英对照)——Nutch的编译、安装和简单运行
- 提高HTML5 canvas性能的几种方法!
- HDU 1042 N!
- 第十三周项目5——将两个字符串连接并保存到第三个字符串中