20200919--矩阵交换行(奥赛一本通P89 1,二维数组)

  给定一个5*5的矩阵(数学上,一个rXc的矩阵是一个由r行c列元素排列成的矩形阵列),将第n行和第m行交换,输出交换后的结果)。

输入:共六行,前五行为矩阵的每一行元素,元素与元素之间以一个空格分开。

第六行包含两个整数m,n(1<=m,n<=5),以一个空格分开。

输出:交换之后的矩阵,矩阵的每一行元素占一行,元素之间以一个空格分开。

样例输入:           样例输出:

1 2 2 1 2               3 0 8 2 4

5 6 7 8 3               5 6 7 8 3

9 3 0 5 3               9 3 0 5 3

7 2 1 4 6               7 2 1 4 6 

3 0 8 2 4               1 2 2 1 2 

1 5

#include <bits/stdc++.h>

using namespace std;

int m[6][6];

int a,b;//要交换的两行

int main()

{

  cout<<"请输入一个5*5的矩阵";

  for(int i=1;i<=5;i++)

   { for (int j=1;j<=5;j++)

       {scanf("%d",&m[i][j]);

        }

    }

  cout<<"请输入要交换的两行:";   

  scanf("%d%d",&a,&b);

  for(int i=1;i<=5;i++)

   {swap(m[a][i],m[b][i]);}

  for(int i=1;i<=5;i++)

   { for (int j=1;j<=5;j++)

       {printf("%d ",m[i][j]);

        }

        printf(" ");

    }

return 0;

}

原文地址:https://www.cnblogs.com/whcsrj/p/13694574.html