第18周报告2:二维数组
来源:互联网 发布:天池大数据竞赛 肺癌 编辑:程序博客网 时间:2024/05/22 15:26
实验目的:学会二维数组的操作实验内容:二维数组的操作* 程序头部注释开始* 程序的版权和版本声明部分* Copyright (c) 2011, 烟台大学计算机学院学生* Copyright (c) 2011, 烟台大学计算机学院学生* All rights reserved.* 文件名称:学会二维数组的操作 * 作 者:薛广晨 * 完成日期:2011 年 12 月 22 日* 版 本号:x1.0 * 对任务及求解方法的描述部分* 输入描述:由程序产生随机数作为初始值* 问题描述:……* 程序输出:……* 程序头部的注释结束#include <iostream>#include"iomanip"#include <time.h>using namespace std;void setdata(int a[8][8]); //设置随机数void out(int a[8][8],int num); //输出数组void outDiagonal(int a[8][8]); //输出对角线元素的值void mine(int a[8][8],int x, int y); //按“扫雷”游戏的规则输出相邻格子void change(int a[8][8]); //按要求改变数值int main(){ int a[8][8],x,y; setdata(a); out(a,0); outDiagonal(a); cout<<"输入一个位置:"; cin>>x>>y; mine(a,x,y); change(a); out(a,1); 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()P+1; return;}void out(int a[8][8],int num){ int i, j; if(num=0) { cout<<"┌─┬─┬─┬─┬─┬─┬─┬─┐"<<endl; for(i=0; i<8; i++) { for(j=0; j<8; j++) { cout<<"│"<<setiosflags(ios::left)<<setw(2)<<a[i][j]; cout<<"│"; } cout<<endl; if(i==7) cout<<"└─┴─┴─┴─┴─┴─┴─┴─┘"<<endl; else cout<<"├─┼─┼─┼─┼─┼─┼─┼─┤"<<endl; } } else { cout<<"┌──┬──┬──┬──┬──┬──┬──┬──┐"<<endl; for(i=0;i<8;i++) { for(j=0;j<8;j++) cout<<"│"<<setiosflags(ios::left)<<setw(4)<<a[i][j]; cout<<"│"; cout<<endl; if(i==7) cout<<"└──┴──┴──┴──┴──┴──┴──┴──┘"<<endl; else cout<<"├──┼──┼──┼──┼──┼──┼──┼──┤"<<endl; } }} void outDiagonal(int a[8][8]){ int i; cout<<"输出从左上到右下对角线上的元素的值:"<<endl; for( i=0; i<8; i++) { cout<<setw(4)<<a[i][i]; } cout<<endl; cout<<"输出从右上到左下对角线上的元素的值:"<<endl; for( i=0;i<8;i++) { cout<<setw(4)<<a[i][7-i]; } cout<<endl;}void mine(int a[8][8],int x, int y){ int add=0; for(int i=-1;i<=1;i++) for(int j=-1;j<=1;j++) { if(x!=x+i||y!=y+j) if((x+i>=0)&&(y+j>=0)) if((x+i<=7)&&(y+j<=7)) { cout<<setw(4)<<a[x+i][y+j]; add+=a[x+i][y+j]; } } cout<<endl; cout<<"它们的和为:"<<add<<"。"<<endl;}void change(int a[8][8]){ for(int i=1;i<8;i++) for(int j=0;j<8;j++) a[i][j]=a[i-1][j]+a[i-1][(j+1)%8]; }运行结果:(贴图)
经验积累:好好的敲,以免出错,认真一些就可以避免很多错误。
上机感言:借用了一下王兴峰的mine函数,太高明啦,佩服啊。
- 第18周报告2:二维数组
- 第18周报告2 二维数组
- 第18周报告2:二维数组
- 第18周报告2:二维数组
- 第18周报告2:二维数组
- 第18周报告2:二维数组
- 第18周报告2--二维数组(基础版)
- 第18周报告2----二维数组 (改进版)
- 第18周报告2---二维数组(升级版)
- 第18周报告2---二维数组(完美版)
- 第18周报告2之二维数组
- 第18周报告2:二维数组(失败)
- 第18周报告2
- C++ 第十八周报告2--《二维数组的操作》
- 第15周报告2: 操作字符数组
- 第14周报告2--数组的初步应用
- 第15周报告2--学会操作字符数组
- 第15周报告2: 学会操作字符数组
- 交换机配置1
- 【Nunit入门系列讲座 6】NUnit断言- 条件断言
- 关于操作access遇到的问题以及解决办法
- 必须掌握的八个【cmd 命令行】
- Application.DoEvents
- 第18周报告2:二维数组
- asp.net网站伪静态化
- jquery 结合ajax例子
- 迷你新居裝修筆記
- 解决中文输入法不可用的问题
- [收藏]2012年1月份8款主流jQuery插件推荐
- 执行SQL语句报ORA-00600 错误的解决
- C++强大背后
- Windows 下 PHP 开发环境配置系列四 - IIS+php+mysql