#include<stdio.h>
//转置在这里插入代码片
void Ttransposition(int a[][4], int len1, int len2)
{
int t;
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < i; ++j)
{
t = a[j][i];
a[j][i] = a[i][j];
a[i][j] = t;
}
}
}
//水平镜像
void HMirror(int a[][4], int len1, int len2)
{
int t;
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2 / 2; ++j)
{
t = a[i][j];
a[i][j] = a[i][len2 - 1 - j];
a[i][len2 - 1 - j] = t;
}
}
}
//垂直镜像
void VMirror(int a[][4], int len1, int len2)
{
int t;
for (int j = 0; j < len2; ++j)
{
for (int i = 0; i < len1 / 2; ++i)
{
t = a[i][j];
a[i][j] = a[len2 - 1 - i][j];
a[len2 - 1 - i][j] = t;
}
}
}
void main()
{
int a[4][4];
int len1 = sizeof(a) / sizeof(a[0]);
int len2 = sizeof(a[0]) / sizeof(a[0][0]);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
a[i][j] = ilen2 + j;//三维:a[i][j][k] = (ilen2 + j)*len3+k;
}
}
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
puts("************************");
//转置
Ttransposition(a, len1, len2);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
puts("********************");
}
void main()
{
int a[4][4];
int len1 = sizeof(a) / sizeof(a[0]);
int len2 = sizeof(a[0]) / sizeof(a[0][0]);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
a[i][j] = ilen2 + j;//三维:a[i][j][k] = (ilen2 + j)*len3+k;
}
}
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
puts("************************");
//顺时针旋转90
VMirror(a, len1, len2);
Ttransposition(a, len1, len2);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j <len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
}
void main()
{
int a[4][4];
int len1 = sizeof(a) / sizeof(a[0]);
int len2 = sizeof(a[0]) / sizeof(a[0][0]);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
a[i][j] = ilen2 + j;//三维:a[i][j][k] = (ilen2 + j)*len3+k;
}
}
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
puts("************************");
HMirror(a, len1, len2);
VMirror(a, len1, len2);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j <len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
}
void main()
{
int a[4][4];
int len1 = sizeof(a) / sizeof(a[0]);
int len2 = sizeof(a[0]) / sizeof(a[0][0]);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
a[i][j] = ilen2 + j;//三维:a[i][j][k] = (ilen2 + j)*len3+k;
}
}
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j < len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
puts("************************");
Ttransposition(a, len1, len2);
VMirror(a, len1, len2);
for (int i = 0; i < len1; ++i)
{
for (int j = 0; j <len2; ++j)
{
printf("%-3d", a[i][j]);
}
puts("");
}
}