当前位置:   article > 正文

作业 二维数组-矩阵问题

作业 二维数组-矩阵问题

对角线之和

题目描述

输入一个矩阵,输出右上-左下对角线上的数字和

输入

输入1个整数N。(N<10)表示矩阵有n行n列

输出

对角线的和

样例

输入复制

4

1 2 3 4

2 3 4 5

4 5 6 7

1 2 3 4

输出复制

14

  1. #include<iostream>
  2. #include<iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int a[100][100] = {0};
  7. int n;
  8. cin>>n;
  9. for(int i = 0;i<n;i++)
  10. {
  11. for(int j = 0;j<n;j++)
  12. {
  13. cin>>a[i][j];
  14. }
  15. }
  16. int sum = 0;
  17. for(int i = 0;i<n;i++)
  18. {
  19. for(int j = 0;j<n;j++)
  20. {
  21. if(i == j)
  22. {
  23. sum = sum + a[i][j];
  24. }
  25. }
  26. }
  27. cout<<sum;
  28. return 0;
  29. }

右转90度

题目描述

输入一个矩阵,输出他右转90度后的结果

输入

输入1个整数N。(N<10)表示矩阵有n行n列

输入n行,代表矩阵内的数据

输出

右转90度后的结果

样例

输入复制

3

1 2 3

4 5 6

7 8 9

输出复制

7 4 1

8 5 2

9 6 3

  1. #include<iostream>
  2. #include<iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int a[100][100] = {0};
  7. int n;
  8. cin>>n;
  9. for(int i = 0;i<n;i++)
  10. {
  11. for(int j = 0;j<n;j++)
  12. {
  13. cin>>a[i][j];
  14. }
  15. }
  16. int sum = 0;
  17. for(int i = 0;i<n;i++)
  18. {
  19. for(int j = 0;j<n;j++)
  20. {
  21. if(i == j)
  22. {
  23. sum = sum + a[i][j];
  24. }
  25. }
  26. }
  27. cout<<sum;
  28. return 0;
  29. }

矩阵交换行

题目描述

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

入输

入共6行,前5行为矩阵的每一行元素,元素与元素之间以一个空格分开。

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

输出

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

样例

样例输入

1 2 2 1 2

5 6 7 8 3

9 3 0 5 3

7 2 1 4 6

3 0 8 2 4

1 5

样例输出

3 0 8 2 4

5 6 7 8 3

9 3 0 5 3

7 2 1 4 6

1 2 2 1 2

  1. #include<iostream>
  2. #include<iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int a[100][100] = {0};
  7. for(int i = 0;i<5;i++)
  8. {
  9. for(int j = 0;j<5;j++)
  10. {
  11. cin>>a[i][j];
  12. }
  13. }
  14. int m,n;
  15. cin>>m>>n;
  16. for(int i = 0;i<5;i++)
  17. {
  18. for(int j = 0;j<2;j++)
  19. {
  20. int b[110] = a[m][j];
  21. a[m][n] = a[n][m];
  22. a[n][m] = b[110];
  23. }
  24. }
  25. for(int i = 0;i<5;i++)
  26. {
  27. for(int j = 0;j<2;j++)
  28. {
  29. cout<<a[i][j];
  30. }
  31. }
  32. return 0;
  33. }

数字走向

题目描述

输入整数N,输出相应方阵。

输入

一个整数N。(0 < n < 10 )

输出

一个方阵,每个数字的场宽为3。

样例

输入复制

5

输出复制

25 24 23 22 21

20 19 18 17 16

15 14 13 12 11

10 9 8 7 6

5 4 3 2 1

  1. #include<iostream>
  2. #include<iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int a[100][100] = {0};
  7. int n;
  8. cin>>n;
  9. int m = n*n;
  10. for(int i = 0;i<n;i++)
  11. {
  12. for(int j = 0;j<n;j++)
  13. {
  14. a[i][j] = m;
  15. m--;
  16. }
  17. }
  18. for(int i = 0;i<n;i++)
  19. {
  20. for(int j = 0;j<n;j++)
  21. {
  22. cout<<a[i][j]<<" ";
  23. }
  24. cout<<endl;
  25. }
  26. return 0;
  27. }

斜角I

题目描述

输入整数N,输出相应方阵。

输入

一个整数N。(0 < n < 10 )

输出

一个方阵,每个数字的场宽为3。

样例

输入复制

5

输出复制

1 2 3 4 5

2 3 4 5 6

3 4 5 6 7

4 5 6 7 8

5 6 7 8 9

  1. #include<iostream>
  2. #include<iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int a[100][100] = {0};
  7. int n;
  8. cin>>n;
  9. int m = 1;
  10. for(int i = 0;i<n;i++)
  11. {
  12. m = i;
  13. for(int j = 0;j<n;j++)
  14. {
  15. a[i][j] = m;
  16. m++;
  17. }
  18. }
  19. for(int i = 0;i<n;i++)
  20. {
  21. for(int j = 0;j<n;j++)
  22. {
  23. cout<<a[i][j]<<" ";
  24. }
  25. cout<<endl;
  26. }
  27. return 0;
  28. }

斜角II

题目描述

输入整数N,输出相应方阵。

输入

一个整数N。(0 < n < 10 )

输出

一个方阵,每个数字的场宽为3。

样例

输入复制

5

输出复制

5 4 3 2 1

4 4 3 2 1

3 3 3 2 1

2 2 2 2 1

1 1 1 1 1

  1. #include<iostream>
  2. #include<iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int a[100][100] = {0};
  7. int n;
  8. cin>>n;
  9. int m = n;
  10. for(int i = 0;i<n;i++)
  11. {
  12. m = m-i;
  13. for(int j = 0;j<n;j++)
  14. {
  15. a[i][j] = m;
  16. m--;
  17. }
  18. }
  19. for(int i = 0;i<n;i++)
  20. {
  21. for(int j = 0;j<n;j++)
  22. {
  23. cout<<a[i][j]<<" ";
  24. }
  25. cout<<endl;
  26. }
  27. return 0;
  28. }

斜角III

题目描述

输入整数N,输出相应方阵。

输入

一个整数N。(0 < n < 10 )

输出

一个方阵,每个数字的场宽为3。

样例

输入复制

5

输出复制

A B C D E

B C D E A

C D E A B

D E A B C

E A B C D

  1. #include<iostream>
  2. #include<iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int a[100][100] = {0};
  7. int n;
  8. cin>>n;
  9. int m = 1;
  10. for(int i = 0;i<n;i++)
  11. {
  12. m = i;
  13. for(int j = 0;j<n;j++)
  14. {
  15. a[i][j] = m;
  16. m++;
  17. }
  18. }
  19. for(int i = 0;i<n;i++)
  20. {
  21. for(int j = 0;j<n;j++)
  22. {
  23. cout<<a[i][j]<<" ";
  24. }
  25. cout<<endl;
  26. }
  27. return 0;
  28. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/458968?site
推荐阅读
相关标签
  

闽ICP备14008679号