keil中实现矩阵转秩

[复制链接]
941|4
 楼主| 请乃们叫额乔哥 发表于 2015-7-20 16:53 | 显示全部楼层 |阅读模式
void Trans4(int*aa,int**bb,u8 m,u8 n)
{
int i,j;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{
bb[j][i]=*aa++;
}  
}

void Trans5(int**aa,int**bb,u8 m,u8 n)
{
int i,j;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
*(bb[j]+i)=*(aa[i]+j);
}

int main(void)
{
int A1[4][2] = {{1, -2}, {2, 7}, {3, 1}, {-4, 3}};
int cc[4][4]=0;
delay_init();                     //延时函数初始化          
while(1)
{
Trans4(A1,cc,4,2);
Trans5(A1,cc,4,2);
while(1);
}
}
不能成功,各位大神帮我看看哪里出了问题。
葫芦娃75 发表于 2015-7-20 16:53 | 显示全部楼层
程序不用这么麻烦,行列互换就行,也就是i,j互换。b[j][i]=a[i][j],用上你的循环就可以了。
 楼主| 请乃们叫额乔哥 发表于 2015-7-20 16:54 | 显示全部楼层
程序不用这么麻烦,行列互换就行,也就是i,j互换。b[j][i]=a[i][j],用上你的循环就可以了。
sunriselight 发表于 2015-7-20 16:54 | 显示全部楼层
您是想把数组和指针灵活的运用吧
 楼主| 请乃们叫额乔哥 发表于 2015-7-20 16:55 | 显示全部楼层
恩恩,是,而且是二维数组
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

29

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部