- #include "stdio.h"
- //定义获取第二大数函数
- int getSubMaxNum(int NumArr[], int NumArrLen);
- int main(void){
- int Arr[] = {120,34,28,125,83,58,30,28,121}; //定义整数数组
- int ArrLen = sizeof(Arr)/sizeof(int); //获取数组元素个数
- int SubMaxNum; //返回的第二大数
- SubMaxNum = getSubMaxNum(Arr, ArrLen);
- printf("%d\\n",SubMaxNum);
- return 0;
- }
- /*
- * int getSubMaxNum(int NumArr[], int NumArrLen)
- * 函数功能:获取整数数组中第二大数
- */
- int getSubMaxNum(int NumArr[], int NumArrLen){
- int i = 0; //循环数
- int MaxNum = 0; //最大数
- int SubMaxNum = 0; //第二大数
- //循环获取最大数
- while(i < NumArrLen){
- if(NumArr[i] > MaxNum){
- MaxNum = NumArr[i];
- }
- i++;
- }
- //获取第二大数
- i = 0;
- while(i < NumArrLen){
- if(NumArr[i] < MaxNum && NumArr[i] > SubMaxNum){
- SubMaxNum = NumArr[i];
- }
- i++;
- }
- return SubMaxNum;
- }
- //该片段来自于http://www.codesnippet.cn/detail/210520149638.html
来源: http://www.codesnippet.cn/detail/210520149638.html