标题:c程序设计中的3*3矩阵转置问题,请问这个程序哪里出错了?谢谢!
取消只看楼主
fallenpeanut
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2015-4-8
结帖率:100%
已结贴  问题点数:5 回复次数:4 
c程序设计中的3*3矩阵转置问题,请问这个程序哪里出错了?谢谢!
#include<stdio.h>
int main()
{
    int a[2][2];
    int b[2][2];
    int i,j;
    int m,n;
    int h,k;
    printf("Please enter a matrix:\n");
    for(i=0;i<=2;i++)
        for(j=0;j<=2;j++)
        scanf("%d",&a[i][j]);
    //输入矩阵用
   
    for(m=0;m<=2;m++)
        for(n=0;n<=2;n++)
        {
        b[n][m]=a[m][n];
        }
    //矩阵转置
    printf("Afer transpositon,the new matrix is:\n");
    for(h=0;h<=2;h++)   
    {
        {
        for(k=0;k<=2;k++)
        printf("%d ",b[h][k]);
        }
        printf("\n");
    }
    //打印转置后的新矩阵
    return 0;
}
搜索更多相关主题的帖子: c程序设计 include matrix 
2015-04-17 13:17
fallenpeanut
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2015-4-8
得分:0 
回复 2楼 我爱吃青菜
额,醍醐灌顶。。。原来把数组定义和引用时的下标弄混了ORZ……谢谢!
2015-04-17 13:34
fallenpeanut
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2015-4-8
得分:0 
回复 2楼 我爱吃青菜
你好,关于刚才的转置问题,书本中给出的答案是:
#include<stdio.h>
#define N 3
int array[N][N];
int main()
{void convert(int array[][3]);
int i,j;
    printf("input array:\n");
    for(i=0;i<N;i++)
        for(j=0;j<N;j++)
            scanf("%d",&array[i][j]);
    printf("\noriginal array:\n");
    for(i=0;i<N;i++)
        {for(j=0;j<N;j++)
        printf("%5d",array[i][j]);
        printf("\n");
        }
convert(array);
printf("convert array:\n");
    for(i=0;i<N;i++)
        {for(j+0;j<N;j++)
        printf("%5d",array[i][j]);
        printf("\n");
        }
    return 0;
}

void convert(int array[][3])
{int i,j,t;
for(i=0;i<N;i++)
    for(j=i+1;j<N;j++)
    {t=array[i][j];
    array[i][j]=array[j][i];
    array[j][i]=t;
    }
}

我运行了也不对,其中对convert函数的定义中的循环,j=i+1这个要怎么理解?谢谢!
2015-04-17 13:52
fallenpeanut
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2015-4-8
得分:0 
回复 5楼 autumnyellow
谢谢!
2015-04-17 19:02
fallenpeanut
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2015-4-8
得分:0 
回复 6楼 我爱吃青菜
修改后好了,也理解j=i+1的意思了,十分感谢!
2015-04-17 19:04



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




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

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