寻找数组中的第二大数

来源:互联网 发布:轻声密语知乎 编辑:程序博客网 时间:2024/05/09 02:45

代码如下:

#include <stdio.h>#include <stdlib.h>//初始化最大值为a[0],次大值为a[1],遍历一次,每次比较并更新最大值和次大值,最后就可以得到次大值。int findsecondmaxvalue(int *a,int size){    int i,max,s_max;    max=a[0];  //最大值    s_max=a[1];  //次大值    for(i=0;i<size;i++)    {        if(a[i]>max)        {            s_max=max;  //更新最大值和次大值            max=a[i];        }        else if(a[i]<max && a[i]>s_max)   //更新次大值            s_max=a[i];    }    return s_max;}int main(void){    int second,a[]={11111,2311};    second=findsecondmaxvalue(a,sizeof(a)/sizeof(a[0]));    printf("这个数组中的次大值为:%d\n",second);    return 0;}


0 0