时间:2021-05-19
例如,如下的方阵:
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>
void rotate(int* x, int rank)
{
int* y = (int*)malloc(sizeof(int) * rank * rank);
for(int i=0; i<rank * rank; i++)
{
// 以原第一行进行分析 一行数变为同一列 以原第一列为例,变为同一行。 (i%rank)*rank使列变为行 rank-(i/rank)-1) 使行变为列
y[(i%rank)*rank+(rank-(i/rank)-1) ] = x[i];
}
for(i=0; i<rank*rank; i++)
{
x[i] = y[i];
}
free(y);
}
int main(int argc, char* argv[])
{
int x[4][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
int rank = 4;
rotate(&x[0][0], rank);
for(int i=0; i<rank; i++)
{
for(int j=0; j<rank; j++)
{
printf("%4d", x[i][j]);
}
printf("\n");
}
return 0;
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
使用canvas的convas来实现围绕旋转动画,外圈顺时针,里层逆时针代码demo链接地址:代码demo链接地址html文件body{margin:0;pad
本文实例为大家分享了java实现顺时针打印矩阵的具体代码,供大家参考,具体内容如下题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果
鱼骨撑调节的具体步骤如下: 1、手握鱼骨直径两端,左手顺时针,右手逆时针旋转,拧成8字形状,收拢成圆形。 2、抓紧收拢的鱼骨,向下折叠1次,以做固定。 3
倒车时:方向盘往“顺时针”方向打,车轮成“/”这个方向,车“逆时针”转(即:从左往右转);方向盘往“逆时针”方向打,车轮成“\”这个方向,车“顺时针”转(即:从
效果图:代码如下:键盘箭头A,D控制左右移动,S控制快速下滑。W控制变形,空格控制暂停,enter开始游戏shape_collection={//图形顺时针旋转