标题:c语言做矩阵转置出现问题?
取消只看楼主
leizhanzhi
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2020-5-31
结帖率:33.33%
已结贴  问题点数:5 回复次数:1 
c语言做矩阵转置出现问题?
C语言做2*3矩阵转置,写一个矩阵转置函数,传入原数组,和一个用于转置之后的数组,在函数中输出没有问题,但是在主函数中,输出转置后的数组元素,最后一行出现乱码
程序代码:
void zhuanzhi(float **a,float **b,int i1,int j1)
{
    int i,j;
    for(i=0;i<i1;i++)
    {
        for(j=0;j<j1;j++)
        {
           b[j][i]=a[i][j];
        }
    }
    for (i=0;i<j1;i++)
    {
        for(j=0;j<i1;j++)
        {
            printf("%f ",b[i][j]);
        }
        printf("\n");
    }
}
int main()
{
  int i,j;
  float a[2][3]={1,2,3,8,5,2},b[3][2];
  float *p[3],*q[2];
  p[0]=a[0],p[1]=a[1],p[2]=a[2];
  q[0]=b[0],q[1]=b[1];
  zhuanzhi(p,q,2,3);
      for (i=0;i<3;i++)
    {
        for(j=0;j<2;j++)
        {
            printf("%f ",b[i][j]);
        }
        printf("\n");
    }
  return 0;
}

运行结果如下:

请前辈帮忙解答一下这是为什么
搜索更多相关主题的帖子: for 转置 printf 矩阵 int 
2020-06-12 13:37
leizhanzhi
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2020-5-31
得分:0 
回复 2楼 rjsp
新手上路,不太清楚二维数据作为传递参数该怎么传递,请问您一般传二维参数使用哪种方式比较好呢
2020-06-12 20:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-502092-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.122530 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved