对于一个给定的 3\times 33×3 矩阵,请将其顺时针旋转 90度后输出。
输入格式
每次程序运行时,你的程序仅需要输入三行,第 i行输入三个整数 a_i, b_i, c_i,任意两个整数之间用一个空格分开。
输出格式
输出为三行,每行包括三个整数,与题目要求的一致(从直观上看,输出的结果应为输入的矩阵旋转 90度后的结果),每行的任意两个整数之间用一个空格分开,最后一个整数后面没有空格。
样例输入
1 2 3
3 4 6
7 8 9
样例输出
7 3 1
8 4 2
9 6 3
1 #include "stdafx.h" 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 int matrix[3][3]; 8 int i, j;
//输入3*3矩阵 9 for (i = 0; i < 3; i++) 10 { 11 for (j = 0; j < 3; j++) 12 { 13 cin >> matrix[i][j]; 14 } 15 }
//输出旋转后的矩阵 16 for (j = 0; j<3; j++) //i与j交换,更能找到规律,方便使用嵌套for语句 17 { 18 for (i = 2; i >= 0; i--) //j与i做交换,更能找到规律,方便使用嵌套for语句 19 { 20 cout << matrix[i][j]; //i与j又换回来 21 if (i == 0) //每次从下往上输出一列元素,跳出本次循环,执行第30行换行语句 22 { 23 break; 24 } 25 else //每输出一个元素,进入else分支,输出空格 26 { 27 cout << " "; 28 } 29 } 30 cout << endl; //执行换行语句 31 } 32 return 0; 33 }