C++实现蛇形矩阵
来源:互联网 发布:瞩目视频会议软件 编辑:程序博客网 时间:2024/05/29 06:28
形如下面的矩阵称为蛇形矩阵:
也称为螺旋矩阵。
源代码:
/************************************************************************* > File Name: snake_matrix.cpp > Author: > Mail: > Created Time: 2016年04月04日 星期一 17时29分57秒 ************************************************************************/#include <iostream>using namespace std;#define N 1000class SnckMatrix{ public: SnckMatrix(int n):num(n){ FillMtrix(); } void print(); private: void FillMtrix(); private: int matrix[N][N]; int num;};void SnckMatrix::FillMtrix(){ int x = 0, y = 0; int val = 0; int curr_x = num, curr_y = num; while(x < curr_x && y < curr_y){ //填充一行 for(int i = y; i < curr_y; ++i){ matrix[x][i] = ++val; } for(int i = x+1; i < curr_x; ++i){ matrix[i][curr_y-1] = ++val; } for(int i = curr_y-2; i > y; --i){ matrix[curr_x-1][i] = ++val; } for(int i = curr_x-1; i > x; --i){ matrix[i][x] = ++val; } x++; y++; curr_x--; curr_y--; }}void SnckMatrix::print(){ for(int i = 0; i < num; ++i){ for(int j = 0; j < num; ++j){ cout << matrix[i][j] << "\t"; } cout << endl; }}int main(){ int size; cout << "Input the matrix size: "; cin >> size; SnckMatrix matrix(size); matrix.print(); return 0;}
运行结果:
0 0
- C语言实现蛇形矩阵
- 蛇形矩阵的实现(C++)
- c实现输出二维蛇形矩阵
- c语言实现输出二维蛇形矩阵
- 【c++】蛇形矩阵
- C语言-蛇形矩阵
- 蛇形矩阵Java实现
- 蛇形矩阵 java实现
- 蛇形矩阵 Java实现
- C++实现蛇形矩阵
- C++实现蛇形矩阵
- 数组蛇形矩阵实现
- java实现蛇形矩阵
- 几个蛇形矩阵实现
- 蛇形矩阵实现算法
- bnu1280 蛇形矩阵 C语言版
- (C#)打印蛇形正方形矩阵
- C语言蛇形矩阵2
- MySQL 5.7 Distrib 5.7.8-rc 主从复制的简单配置,备忘
- 从一个表中查数据,插入另一个表
- [软件人生]关于认知,能力的思考——中国城市里的无知现象片段
- 随机数的获取
- 多层神经网络Multi-layer networks
- C++实现蛇形矩阵
- 通过构造方法为私有属性赋值
- 通过路径分隔符新建文件路径
- WCF基础
- xmemcached简单使用
- SQL Server触发器创建、删除、修改、查看
- 神经网络BP反向传播算法Error Backpropagation
- 坎巴拉太空计划MOD:kRPC0.2.2中文文档
- 内部类和匿名内部类的学习心得