m行n列矩阵顺时针旋转90度、180度c++代码

#include 
using namespace std;


int main() {
	int m, n;
	int flag1=0;
	cin >> m >> n;
	int a[100][100];
	int b[100][100];
	

	for (int i = 0; i < m; i++)
	{
		for (int j = 0; j < n; j++)
		{
			cin >> a[i][j];		//m行n列
		}

	}

	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < m; j++)			//n行m列
		{
			b[i][j] = a[m-1 - j][i];  //顺时针旋转90 度
			cout << b[i][j]<<" ";
			flag1++;
			if (flag1 == m) {
				cout << endl;
				flag1 = 0;
			}
			
		}

	}
}

m行n列矩阵顺时针旋转90度、180度c++代码_第1张图片

 

以下是翻转180度的代码: 

#include 
using namespace std;


int main() {
	int m, n;
	int flag1=0;
	cin >> m >> n;
	int a[100][100];
	int b[100][100];
	

	for (int i = 0; i < m; i++)
	{
		for (int j = 0; j < n; j++)
		{
			cin >> a[i][j];		//m行n列
		}

	}

	for (int i = 0; i < m; i++)
	{
		for (int j = 0; j < n; j++)			//n行m列
		{
			b[i][j] = a[m-1 - i][n-1-j];  //顺时针旋转180 度
			cout << b[i][j]<<" ";
			flag1++;
			if (flag1 == n) {
				cout << endl;
				flag1 = 0;
			}
			
		}

	}
}

m行n列矩阵顺时针旋转90度、180度c++代码_第2张图片

 

你可能感兴趣的:(c++,矩阵,算法)