当前位置:   article > 正文

C语言--有一个3*4的矩阵,求出其中最大值的那个元素的值,以及其所在的行号和列号_3×4的矩阵,编程其中最大值,以及其行和列

3×4的矩阵,编程其中最大值,以及其行和列


一.题目描述

有一个3*4的矩阵,要求求出其中最大值的那个元素的值,以及其所在的行号和列号

比如:给定一个3*4的矩阵如下

输出结果:最大值为 12 ,行号为3, 列号为2


二.思路分析

打擂台算法:
先思考一下在打擂台的时候,如何确定最后的优胜者的,先找出任意一个人站在台上,第二个人上去与之比武,胜利的人留在台上,再上去第三个人与第二个人比武,胜者留在台上,败者下台,以后每一个人都与当时留在台上的人比武,知道所有人都上台比过为止,最后留下的就是冠军。
本题也是用“打擂台算法”,先让arr[0][0]成为擂主,把它的值赋给遍量max,max用来存放当前已知的最大值,然后让下一个元素arr[0][1]与max比较,如果arr[0][1]>max,则表示arr[0][1]是已经比过的数据中最大的。把它的值再赋给max,以后依次处理,值最大的赋值给max,直到全部比完后,max就是最大的值。

三.完整代码

  1. #include<stdio.h>
  2. int main()
  3. {
  4. int arr[3][4] = {0,2,213,123,3,1,5,4,33,23,21,44};
  5. int max = arr[0][0];//暂且先认为第一个值是最大值
  6. int row = 0;//行号
  7. int col = 0;//列号
  8. int i, j = 0;
  9. for (i = 0;i < 3;i++)//行
  10. {
  11. for (j = 0;j < 4;j++)//列
  12. {
  13. if (arr[i][j] > max)
  14. {
  15. max = arr[i][j];//换上新的擂主
  16. row = i;
  17. col = j;
  18. }
  19. }
  20. }
  21. printf("最大值是%d\n行号是%d\n列号是%d", max, row, col);
  22. return 0;
  23. }

四.运行结果

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

闽ICP备14008679号