用C语言实现,找出一个整数数组中,第二大的数
用C语言实现,找出一个整数数组中,第二大的数
/*******************************************************************
*
* file name:
* author : RISE_AND_GRIND@163.com
* date : 2024/04/07
* function : 找出一个整数数组中,第二大的数
* note : None
*
* CopyRight (c) 2023-2024 RISE_AND_GRIND@163.com All Right Reseverd
*
* *****************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int FindSecondMax(int *ptr, int n);
int main(int argc, char *argv[])
{
int array[4] = {0};
printf("请依次回车输入4个数字\n");
for (int i = 0; i < 4; i++)
{
scanf("%d", &array[i]);
getchar();
}
printf("第二大数为%d\n", FindSecondMax(array, 4));
return 0;
}
/*******************************************************************
*
* author : RISE_AND_GRIND@163.com
* date : 2024/04/07
* function : 找出一个整数数组中,第二大的数
* note : None
*
* *****************************************************************/
int FindSecondMax(int *ptr, int n)
{
int max1 = 0, max2 = 0;
max1 = *ptr;
for (int i = 1; i < n; i++)
{
if (*(ptr + i) > max1)
{
max2 = max1;
max1 = *(ptr + i);
}
else
{
if (i == 1)
max2 = *(ptr + i);
else if (*(ptr + i) > max2)
max2 = *(ptr + i);
}
}
return max2;
}
本文来自博客园,作者:舟清颺,转载请注明原文链接:https://www.cnblogs.com/zqingyang/p/18120317