求数组中的所有元素最大值、最小值、平均值以及各元素之和,及第二大值。

来源:互联网 发布:大数据时代的小数据 编辑:程序博客网 时间:2024/05/01 10:36
<pre name="code" class="plain">


随机产生20[10 , 50]的正整数,并求数组中的所有元素最大值、最小值、平均值以及各元素之和,及第二大值。

    int a[20] = {}, max =0, sec =0, min =50;

   float ave =0, sum =0;

   for (int i =0; i <20; i++) {

        a[i] =arc4random() %41 +10;

       printf("%d  ",a[i]);

       if (min > a[i]) {

            min = a[i];

        }

       if (max < a[i]) {

            sec = max;//sec是上一个max,要定义上一个数需要在本次定义之前,引入另一个变量与他赋值.

            max = a[i];//当第二值在最大数之后是,不会显示出来.

        }elseif (sec < a[i] && a[i] < max){

            sec = a[i];//只有(sec < a[i]),最大数之后还有最大数时,有漏洞.

        }

        sum += a[i];

        

    }

    ave = sum /20;

    printf("最小值:%d最大值:%d平均值:%.2f 第二值:%d",min, max, ave, sec);


0 0