输入一组整数(可以有重复数据),求第二大的值

Posted on 2022-11-09 16:30  lachesism  阅读(484)  评论(0)    收藏  举报

输入:

第一行是数据个数n(大于2且小于20),第二行输入n个整数,空格分隔

输出:

输出这组数据中的次大值(注意最大值可能有多个)

#include<stdio.h>
main()
{
    int a[20],i,n;
    int max=0;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
        if(max<a[i])
        {
            max=a[i];
        }
    }
    for(i=0;i<n;i++)
    {
        if(max==a[i])
        {
            a[i]=0;
        }
    }
    max=0;
    for(i=0;i<n;i++)
    {
        if(max<a[i])
        {
            max=a[i];
        }
    }
    printf("%d",max);
}