C++程序 交换矩阵的对角线

C++程序 交换矩阵的对角线

简介

本篇文章介绍了如何使用C++语言编写一个程序来交换矩阵的对角线。在这里,我们会通过示例代码来详细介绍交换对角线的思路和具体实现方式。代码运行环境为Windows10系统,使用VSCode作为文本编辑器。

程序思路

在本程序中,我们需要构造一个二维数组来表示矩阵,并对其进行处理。交换矩阵的对角线即将第i行第i列和第n-i+1行第n-i+1列的元素互换。具体实现思路如下:

  1. 定义一个整型的二维数组matrix。
  2. 通过嵌套循环将matrix中的各个元素输入。
  3. 循环交换matrix的对角线元素,即matrix[i][i]与matrix[n-i+1][n-i+1]互换。

示例代码

#include <iostream>
using namespace std;

int main()
{
    int n;
    cout<<"请输入矩阵维数n:\n";
    cin>>n;
    int matrix[n][n]; //定一个一个n行n列的矩阵

    for (int i=0; i<n; i++) //输入二维数组matrix
    {
        for (int j=0; j<n; j++)
        {
            cout<<"请输入第"<<i+1<<"行第"<<j+1<<"列的数字:\n";
            cin>>matrix[i][j];
        }
    }

    for (int i=0; i<n; i++) //将对角线上的元素进行互换
    {
        int temp;
        temp = matrix[i][i];
        matrix[i][i] = matrix[n-i-1][n-i-1];
        matrix[n-i-1][n-i-1] = temp;
    }

    for (int i=0; i<n; i++) //输出交换后的矩阵
    {
        for (int j=0; j<n; j++)
        {
            cout<<matrix[i][j]<<" ";
        }
        cout<<endl;
    }
    return 0;
}

运行结果

假设我们输入的矩阵为:

3 5 7
2 4 6
8 1 9

则程序的输出结果为:

请输入矩阵维数n:
3
请输入第1行第1列的数字:
3
请输入第1行第2列的数字:
5
请输入第1行第3列的数字:
7
请输入第2行第1列的数字:
2
请输入第2行第2列的数字:
4
请输入第2行第3列的数字:
6
请输入第3行第1列的数字:
8
请输入第3行第2列的数字:
1
请输入第3行第3列的数字:
9
9 5 8 
2 4 6 
7 1 3 

结果表明程序正确地交换了矩阵的对角线。

结论

通过这个简单的例子,我们学习了如何使用C++编写程序来交换矩阵的对角线。程序的主要思路是定义一个二维数组,通过循环将其中的元素输入,然后再对数组中的对角线元素进行交换。因此,通过对这个程序的认真学习,我们可以更好地掌握C++ 编程语言。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

C++ 示例