矩阵转换.c

来自「可实现矩阵转换」· C语言 代码 · 共 44 行

C
44
字号
void trans(int *p,int n)
{
	int i,j,temp;
	int *pi,*pj;
	for(i=0;i<=n-1;i++)
	{
		for(j=0;j<=i;j++)
    		{
			pi =p +i*n;  /*p首地址 */
			pj =p +j*n;
			temp=pi[j];
			pi[j]=pj[i];
			pj[i]=temp;
    		}

	}
	return;
}

main()
{
	int a[4][4]={ 1, 2, 3, 4,
		      5, 6, 7, 8,
		      9, 10,11,12,
		      13,14,15,16};
	int i,j;
    	printf("before transform:\n");
    	for(i=0;i<=3;i++)
    	{
    		for(j=0;j<=3;j++)
    			printf("  %d",a[i][j]);
 		printf("\n");
      	}
    	trans((int*)a,4);
    	
    	printf("after transform:\n");
    	for(i=0;i<=3;i++)
      	{
      		for(j=0;j<=3;j++)
      			printf("  %d",a[i][j]);
  		printf("\n");
      	}
    	return;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?