1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
变换之后
16 12 8 4
15 11 7 3
14 10 6 2
13 9 5 1
这个要怎么实现啊,求解,最好能有具体思路
找到规律就好写了:
a[0][0] 1 对应a[3][3]
a[0][1] 2 对应a[2][3]
a[0][2] 3 对应a[1][3]
a[0][3] 4 对应a[0][3]
先看行:
仔细观察会发现 一开始都在第一行a[0]行(联系下面列转换后的结果)
之后的转换后变成了 a[3] ... a[0]行
再看列:
本身是a[0]...a[3]列 (联系上面行转换后的结果)
之后都在第四行a[3]列了
总结思路:
1、两层for循环 用于输入二维数组数据
2、再来两层for循环 用于交换位置即可(s[i][j]=s[3-j][3-i])。
两个for循环,通过i,j进行互换.如s[i][j]=s[3-j][3-i];
这篇文章:二维数组转置-对角线对称 也许有你想要的答案,你可以看看