矩阵的特殊角旋转:0 90 180 270
#include<stdio.h> #include<string.h> int main () { int T, n, m, i, j, k; char s[100][100]; scanf("%d", &T); while (T--) { scanf("%d %d", &n, &m); for (i = 0; i < n; i++) scanf("%s", s[i]); scanf("%d", &k); if (k == 0) { for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { if (j != m-1) printf("%c", s[i][j]); else printf("%c ", s[i][j]); } } } //旋转角为0时 else if (k == 90) { for (i = 0; i < m; i++) { for (j = n-1; j >= 0; j--) { if (j != 0) printf("%c", s[j][i]); else printf("%c ", s[j][i]); } } } //旋转角为90时 else if (k == 180) { for (i = n-1; i >= 0; i--) { for (j = m-1; j >= 0; j--) { if (j != 0) printf("%c", s[i][j]); else printf("%c ", s[i][j]); } } } //旋转角为180时 else if (k == 270) { for (j = m-1; j >= 0; j--) { for (i = 0; i < n; i++) { if (i != n-1) printf("%c", s[i][j]); else printf("%c ", s[i][j]); } } } //旋转角为270时 } return 0; }