?????" 2020-06-13 16:10 采纳率: 100%
浏览 335
已采纳

1.方的阵转置 (10分) c++

编写一个类用于处理3×3矩阵转置,测试转置的效果,输出转置前后的矩阵。

函数接口定义:

根据要求写出类,并可以使得主函数正确运行,得到对应的结果。

裁判测试程序样例:


/* 请在这里填写答案 */

在这里给出函数被调用进行测试的例子。例如:
int main(){
    Matrix m;
    m.input();
    m.show();
    m.transform();
    m.show();
}


输入样例:

1 2 3
4 5 6
7 8 9

输出样例:
注意每个元素前面有一个空格字符。例如:

datas:
 1 2 3
 4 5 6
 7 8 9
datas:
 1 4 7
 2 5 8
 3 6 9
  • 写回答

1条回答 默认 最新

  • qtchen_1988 2020-06-13 16:54
    关注
    #include <stdio.h>
    #include <string.h>
    class Matrix{
    public:
        void input(){
            for(int i=0;i<3;i++)
                for(int j=0;j<3;j++)
                    scanf("%d",&arr[i][j]);
        }
        void show(){
            for(int i=0;i<3;i++){
                for(int j=0;j<3;j++)
                     printf(" %d",arr[i][j]);
                printf("\n");
            }
        }
        void transform(){
            int temp[3][3];
            memcpy(&temp[0][0],&arr[0][0],sizeof(arr));
            for(int i=0;i<3;i++)
                for(int j=0;j<3;j++)
                    arr[i][j] = temp[j][i];
        }
    private:
        int arr[3][3];
    };
    int main(){
        Matrix m;
        m.input();
        m.show();
        m.transform();
        m.show();
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?