把矩阵A的行换成相应的列,得到的新矩阵称为A的转置矩阵。大家在《程序设计基础》的上机实验题目和平时的练习中肯定做过一些关于矩阵的题,其中最常见的就是矩阵的转置了。so,今天我们就不考矩阵的转置了,我们要考察一下矩阵的旋转。
输入
输入包含多组测试数据.
每组数据的第一行为两个整数 R 和 C(1 <= R, C <= 10 ),分别代表矩阵的行数和列数。
接下来 R 行,每行为 C 个空格隔开的整数。
输出
对于每组测试数据,输出按照顺时针旋转后的矩阵。
示例输入
4 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
示例输出
13 9 5 1 14 10 6 2 15 11 7 3 16 12 8 4
#include <stdio.h> int main() { int m,n,i,j,k,x,y; int a[100][100] = {0},b[100][100] = {0}; while(scanf("%d%d",&m,&n)!=EOF) { if(m>=1 && n<=10) { for(i = 0;i<m;i++) { for(j = 0;j<n;j++) { scanf("%d",&a[i][j]); } } y = m-1; for(i = 0;i<m;i++) { x = 0; for(j = 0;j<n;j++) { b[x][y] = a[i][j]; x++; } y--; } for(i = 0;i<n;i++) { for(j = 0;j<m;j++) { if(j == 0) printf("%d",b[i][j]); else printf(" %d",b[i][j]); } printf("\n"); } } else break; } return 0; }