鱼C论坛

 找回密码
 立即注册
查看: 2714|回复: 4

c语言数组函数问题!!!/****求助中!*****/

[复制链接]
发表于 2012-6-12 21:29:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
写一个函数。使给定的一个3*3的二维数组转置,就是行列交换!!!!
怎么我做出来的是原样输出呀,半天也不晓得问题在哪里!!!
#include <stdio.h>

int jiaohuan(int a[3][3] )
{
     int i, j, n, b[3][3];
     for( i = 0; i < 3; i++ )

          for( j = 0; j < 3; j++)

               b[j][i] = a[i][j];

     
}


void main()
{
     
     int  i, j, c[3][3];
     printf("input  jiugongge:\n");
     for( i = 0; i < 3; i++)
     {
          for( j = 0; j < 3; j++)                        
               scanf("%d",&c[i][j] );                    
     }

   jiaohuan(c);
     
     for( i = 0; i < 3; i++ )
     {
          for( j = 0; j < 3; j++)                              
               printf("%d  ",c[i][j]);

          printf("\n");

     }
     
}
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-6-12 22:13:50 | 显示全部楼层
本帖最后由 翠竹 于 2012-6-12 22:17 编辑

这个,你把二维数组c传给了子函数int jiaohuan(int a[3][3]);你在内部定义了一个b[3][3],之后b成了c的转置矩阵,但是函数返回之后(首先你这个没返回值,也不需要返回值,void就可以),b就“释放”掉了,c[3][3]原封不动,然后输出的当然就是原矩阵。
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-6-13 13:03:04 | 显示全部楼层
听君一席话,胜读十年书!!!!
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-6-15 02:22:54 | 显示全部楼层
我也看了半天 你最后输出这里有点 蛋疼了
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-6-16 17:32:23 | 显示全部楼层
谢谢大家了!!!
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-13 17:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表