练习>>在二维数组中找出最大数,并输出行,列

简介: 练习>>在二维数组中找出最大数,并输出行,列

解析:



这题只需要用打擂台法找出最大值的同时并记录坐标;

先假设 arr[0][0] 是该数组的最大数,并记录坐标;行为0,列为0;

用后面的每个数进行比较,如果比它大,就把它替换掉,并且坐标也跟着变。


代码实现以及代码的解析:



include <stdio.h>
#define N 4
#define M 3
int col = 0;
int row = 0;
int fun(int arry[N][M])
{
  int max = 0;
  int i = 0;
  int j = 0;
  for (i = 0; i < N; i++)
  {
    for (j = 0; j < M; j++)
    {
      if (arry[0][0] < arry[i][j])  //假设第一个数最大,用后面的每个数进行比较
      {
        arry[0][0] = arry[i][j];  //如果比他大,就进行替换
        row = i;
        col = j; //记录坐标
      }
    }
  }
  return arry[0][0];   //返回最大的这个数
}
int main()
{
  int a[N][M];
  int i = 0;
  int j = 0;
  int max = 0;
  printf("input a array:");
  for (i = 0; i < N; i++)    //输入这个二维数组
  {
    for (j = 0; j < M; j++)
    {
      scanf("%d",&a[i][j]);
    }
  }
  for (i = 0; i < N; i++)
  {
    for (j = 0; j < M; j++)
    {
      printf("%d  ",a[i][j]);
    }
    printf("\n");
  }
  max = fun(a);    //用max来接收fun函数的返回值
  printf("max=%d row=%d col=%d",max,row,col);   //打印最大值以及最大值所在的行列
  return 0;
}


运行结果:


24caca3d06b84fd18c7da29f03398c88.png

目录
相关文章
|
算法
arr = [1,2,5,8,9,10,20,30,40] 有一个从小到大排序好的数组,现在输入一个数,要求按照原来的规律插入到数组中
arr = [1,2,5,8,9,10,20,30,40] 有一个从小到大排序好的数组,现在输入一个数,要求按照原来的规律插入到数组中
121 0
|
8月前
|
存储 算法 索引
给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数
给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数
|
8月前
18.把1~100存到一维数组a[100]中,并输出。要求每行输出10个,数据所占宽度相同
18.把1~100存到一维数组a[100]中,并输出。要求每行输出10个,数据所占宽度相同
44 3
|
7月前
|
C语言
C语言----随机输入10个数,从小到大依次排列
C语言----随机输入10个数,从小到大依次排列
|
8月前
|
数据挖掘 数据处理 索引
使用Python实现DataFrame中奇数列与偶数列的位置调换
使用Python实现DataFrame中奇数列与偶数列的位置调换
95 1
|
8月前
PTA-二维数组中每行最大值和每行和
该代码段读取一个3x3二维数组的输入,计算每行的最大值和元素和,并按照指定格式输出。给定输入示例为`3 6 5 9 8 2 1 4 5`,输出格式化后的结果为: ``` 3 6 5 6 14 9 8 2 9 19 1 4 5 5 10 ``` 代码首先使用`map(int, input().split())`将输入转换为整数列表,然后通过循环处理每行,计算每行的最大值(`max(s)`)和元素和(`sum(s)`),并使用`f-string`格式化输出,每个数据占4列。
138 1
|
8月前
44.从键盘输入12个数存入二维数组a[3][4]中,编写程序求出最大元素的值及它所在的行号和列号
44.从键盘输入12个数存入二维数组a[3][4]中,编写程序求出最大元素的值及它所在的行号和列号
107 0
|
8月前
让用户依次输入三个整数,求出三个数中的最小值,并打印到控制台
让用户依次输入三个整数,求出三个数中的最小值,并打印到控制台
75 0
|
8月前
|
存储 搜索推荐 Serverless
用指针和动态内存分配的方法输入10,2,30, 4,5,按输入顺序逆置排序,输出排序后的元素,即输出5,4,30,2,10
用指针和动态内存分配的方法输入10,2,30, 4,5,按输入顺序逆置排序,输出排序后的元素,即输出5,4,30,2,10
50 0
定义一个包含10个整数元素的数组,初始值由用户给定。找出数组中的最大数并连同下标一起输出。
定义一个包含10个整数元素的数组,初始值由用户给定。找出数组中的最大数并连同下标一起输出。
242 0