用C隨機產生的正整數存到數組中,並求數組中的所有元素最大值、最小值、平均值以及各元素之和,及第二大值。

來源:互聯網
上載者:User

標籤:平均值   最大值   正整數   第二大值   

用 C 求一組隨機數的第二大值,不能通過對整體排序求得

1 隨機產生20個[10 , 50]的正整數存到數組中,並求數組中的所有元素最大值、最小值、平均值以及各元素之和,及第二大值。
    
    int a[20];
    int sum = 0; //儲存數組元素的和
    //為數組賦值
    printf("數組中的元素為:\n ");
    for (int i = 0; i < 20; i ++) {
        a[i] = arc4random() % 41 + 10;
        sum += a[i];   // 對數組中的數求和
        printf("%d ",a[i]);
    }
    printf("\n");
    int max = a[0];   //儲存數組中的最大值
    int min = a[0];   //儲存數組中的最小值
    int second = a[0];//儲存數組中第二大值
    int ave = 0;      //儲存平均值
    ave = sum / 20;
    for (int i = 1; i < 20 ; i ++) {
        // 求數組中的最大值
        if (a[i] > max) {
            max = a[i];
        }
        // 求數組中的最小值
        if (a[i] < min ) {
            min = a[i];
        }
    }
    // 求數組中的第二大值
    for (int i = 1; i < 20; i ++) {
        if (second < max && second < a[i]) {
            if (a[i] == max) {
                continue;
            }
            second = a[i];
        }
    }
    
    printf("最大值為:%d\n",max);
    printf("最小值為:%d\n", min);
    printf("這些數的平均值為:%d\n",ave );
    printf("第二大值為:%d\n", second);
    

用C隨機產生的正整數存到數組中,並求數組中的所有元素最大值、最小值、平均值以及各元素之和,及第二大值。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.