利用按位异或运算符实现矩阵转置

#include<iostream>


using namespace std;


 int main()
 {
  int a[][4]={{3,6,1,9},{3,8,3,6},{7,2,1,5},{4,3,0,9}};
  int i,j;
  for(i=0;i<4-1;i++)
  {
  for(j=i+1;j<4;j++)
  {
  a[i][j]=a[i][j]^a[j][i];  //只限整型
  a[j][i]=a[j][i]^a[i][j];
  a[i][j]=a[i][j]^a[j][i];
  }
  }
 
  for(i=0;i<4;i++)
  {
  for(j=0;j<4;j++)
  {
  cout<<a[i][j]<<" "; 
  }
  cout<<endl;
  }
 
 
 
  return 0;
 } 

猜你喜欢

转载自blog.csdn.net/niuageniuc/article/details/53021284