矩阵的旋转

来源:百度知道 编辑:UC知道 时间:2024/05/15 17:53:30
用C++写个程序 实现矩阵的旋转 谁能帮忙写下哦 急哦~
矩阵的右旋,左旋,可以避免旋转90 180 270 360度,2D的,希望快点

你要怎么样的旋转?旋转这个问题涉及到图形,你是要2D的呢还是要3D的矩阵旋转?
#include<stdio.h>

#define N 10

void main()
{
int n;
int i, j, k, t;
int a[N][N];

puts("input n:");
scanf("%d", &n);
if (n<1 || n>9)
{
puts("error");
return;
}

t = 1;
for (i=1;i<=(n-1)/2+1;i++)
{
j=i-1;
for (k=j;k<n-j;k++)
a[j][k] = t++;
for (k=j+1;k<n-j;k++)
a[k][n-j-1] = t++;
for (k=n-j-2;k>=j;k--)
a[n-j-1][k] = t++;
for (k=n-j-2;k>j;k--)
a[k][j] = t++;
}

for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
printf("%d\t",a[i][j]);
puts("\n");
}
}