写一个函数,将一个3*3整型矩阵转置。在主函数中调用,输出结果,用一维数组表示这个矩阵

时间:2025-04-18 16:57:46

写一个函数,将一个3*3整型矩阵转置。在主函数中调用,输出结果,用一维数组表示这个矩阵。

在复习cpp考试时看到的指针部分课后练习题。本来在网上看了看,发现大多输入用的二维矩阵,不太符合我期望看到的代码。

输入:一个一维数组
输出:一个一维数组
思想:int 类型指针。


```cpp
int main() {
   int arr[9] = {1,2,3,4,5,6,7,8,9};
   for(int z = 0; z<9;z++)
    cout<<arr[z]<<", ";
   cout<<endl;
 
   int * p = arr, i , j;
   for(i = 0;i<3;i++)
   {
    for(j = 0; j<i; j++)
     {
       int temp = *(p+3*i+j);
       *(p+ 3*i + j) = *(p+ 3*j + i);
       *(p+ 3*j + i) = temp;
    }  
   }
    for(int z = 0; z<9;z++)
    cout<<arr[z]<<", ";
}
Finished in 0 ms
1, 2, 3, 4, 5, 6, 7, 8, 9, 
1, 4, 7, 2, 5, 8, 3, 6, 9,