标题:用调用函数的方法转换矩阵,,结果出不来,求指教。、。。
取消只看楼主
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
结帖率:95.37%
已结贴  问题点数:20 回复次数:14 
用调用函数的方法转换矩阵,,结果出不来,求指教。、。。
#include<stdio.h>
#define n 3
int main()
{
    int i,j;
    int a[n][n];
    int matrix(int a[3][3]);
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        scanf("%f",&a[i][j]);
    }
    printf("\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        printf("%f",&a[i][j]);
        printf("\n");
    }
    matrix(a);
    printf("转换后的矩阵为:\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        printf("%f",a[i][j]);
        printf("\n");
    }
}
int matrix(int a[3][3])
{
    int i,j;
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
               a[j][i]=a[i][j];
        return(a[i][j]);
    }
}
搜索更多相关主题的帖子: include matrix 
2017-03-03 21:29
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 2楼 炎天
改了改 当初没又检查出来 但是还是不行,
2017-03-05 09:47
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 3楼 姚萌萌
对 没有& 转换什么??
2017-03-05 09:48
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 4楼 九转星河
什么缩进??
2017-03-05 09:49
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 7楼 C初见
当时有点发懵,,现在改了 那还不行,。
2017-03-05 09:50
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 5楼 九转星河
还是输不出来。。。 为什么要改成j=i+1???
2017-03-05 09:52
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 6楼 云团
你的这个也数不出来,,,我刚试了。。
void fun(int (*a)[N]) 你问什么定义成不需要返回值的函数,,(*a)[N])这一点是什么意思??
 { int i,j,t;
  for(i=0;i<N/2;i++)
   for(j=i;j<N;j++)    还有这一点。。。
2017-03-05 09:58
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
#include<stdio.h>
#define n 3
int main()
{
    int i,j;
    int a[n][n];
    void matrix(int a[3][3]);
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
            scanf("%d",&a[i][j]);
    }
    printf("\n");
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
            printf("%3d",a[i][j]);
            
         printf("\n");
    }
    matrix(a);
    printf("转换后的矩阵为:\n");
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
            printf("%3d",a[i][j]);
            
        printf("\n");
    }
    return 0;
}
void matrix(int a[3][3])                      //还有为什么要不需要返回值的函数???用int为什么不可以??
{
    int i,j,t;
    for(i=0;i<n;i++)
    {
        for(j=i+1;j<n;j++)
               {
                   t=a[i][j]; //为什么要这一步。
                   a[i][j]=a[j][i];                   //只要中间这个为什么输不出来。。???
                   t=a[j][i];//还有这个。
            }
    }
}
              

  



[此贴子已经被作者于2017-3-5 10:38编辑过]

2017-03-05 10:08
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 15楼 九转星河
我的不对。、、、为什么要加这两个 ???还有为什么要用void函数,,这不是有返回值a[i][j]吗?
2017-03-05 11:03
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 17楼 renkejun1942
为什么必须要用viod函数。?
2017-03-05 12:47



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




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

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