当前位置:编程学习 > C/C++ >>

编写一个函数实现矩阵的转置运算

#include <stdio.h>

void reverse(int (*a)[4],int (*b)[3]);
void Output(int (*b)[3],int n,int m);
void Input(int (* a)[4],int n,int m);

 

int main()
{
 int a[3][4],b[4][3];
 Input(a,3,4);
 printf("输出数据a[3][4]:\n");
 Output(a,3,4);
 reverse(a,b);
 printf("输出数据b[4][3]:\n");
 Output(b,4,3);

 return 0;
}

void Input(int (* a)[4],int n,int m)
{
 int i,j;
 printf("请输入3*4个数据:");
 for(i=0;i<n;i++)
  for(j=0;j<m;j++)
   scanf("%d",(*(a+i)+j));
}


void Output(int (*b)[3],int n,int m)
{
 int i,j;
 
 for(i=0;i<n;i++)
 {
  for(j=0;j<m;j++)
   printf("%d\t",*(*(b+i)+j));
  printf("\n");
 }
}

void reverse(int (*a)[4],int (*b)[3])
{
 int i,j;
 for(i=0;i<4;i++)
  for(j=0;j<3;j++)
   b[i][j]=a[j][i];
}

 

补充:软件开发 , C语言 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,