本文主要是介绍将一个N*N的矩阵逆转90度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
//将一个N*N的矩阵逆转90度
#include <stdio.h>// 交换两个数
void swap(int *p1, int *p2)
{int temp;temp = *p1;*p1 = *p2;*p2 = temp;
}//必须指明数组长度
void Reverse90(int (&b)[2][2], int len)
{int i,j;for(i=0; i<len/2; ++i){ //转置矩阵for(j=i+1; j<len/2; j++)swap(&b[i][j],&b[j][i]);//每行对半交换for(j=0; j<len/2/2; j++)swap(&b[i][j],&b[i][len/2-1-j]);}
}int main(void)
{int a[2][2] = {1,2,3,4};Reverse90(a,4);int i;for(i=0; i<4; ++i)printf("%d ",*(*a+i));return 0;
}
这篇关于将一个N*N的矩阵逆转90度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!