#include<stdio.h>
int main()
{
int a[] = { 7, 4, 9, 9, 6 };
int len = sizeof(a) / sizeof(int);//求数组元素个数
int max_subscript = 0;//设置最大值下标为0,为数组第一个数
int second_subscript = 1;//设置次大值下标为1,为数组第二个数
while (1)
{
for (int i = 0; i < len;i++)//从下标1(即第二个元素开始遍历)开始遍历
{
if (max_subscript == i)
{
continue;//跳过原来最大值的下标,直接开始i+1的循环
}
if (a[i]>a[max_subscript])//遍历的值a[i]比最大值都大那么此时的最大值为a[i],次大值为原来的最大值即a[max_subscript]
{
second_subscript = max_subscript;//先赋值次大值为原来的最大值
max_subscript = i;//赋值现在的最大值为a[i]
}
else
{
/*即a[i]小于最大值最大值得情况,那么就有两种情况:
1.a[i]大于次大值,那么
此时最大值还是原来的最大值a[max_subscrip
c语言数组几个数求次大值
最新推荐文章于 2024-08-21 15:57:36 发布