博客 / 詳情

返回

[C語言]生成10個隨機種子為824的學生成績,用指針法統計低於均分的情況

1、題目

在[0,100]範圍生成10個隨機種子為824的學生成績。請你設計子函數實現指針法統計低於均分的情況。

要求:

  • 1、使用子函數:void GetScore(int p, float avg, int* num) //p是指向原成績數組的指針,avg存儲均分,num指針存儲低於均分人數。
  • 2、使用指針法處理數據在子函數中實現統計,不允許在子函數中輸出
  • 3、主函數中輸出,輸出分三行:

    • 第一行輸出原始成績
    • 第二行輸出均分及低於均分總個數
    • 第三行輸出低於均分的成績,保留一位小數

示例:

輸出:2 78 1 8 43 57 52 54 9 69
           avg=37.3 num=4
           2 1 8 9

2、完整代碼

#include<stdio.h>
#include<stdlib.h>

void GetScore(int* b, float* avg, int* num)
{
    int i;
    *num = 0;
    *avg = b[0];
    for (i = 0; i < 10; i++) {
        *avg += b[i];
    }
    *avg = *avg / 10;
    for (i = 0; i < 10; i++) {
        if (*avg >= b[i])
            *num += 1;
    }
}
void main()
{
    int a[10], num;
    float avg;
    //種子824
    srand(824);
    for (int i = 0; i < 10; i++)
    {
        // 0-100隨機數
        a[i] = rand() % 101;
        printf("%d ", a[i]);
    }
    GetScore(a, &avg, &num);
    printf("\navg=%.1f num=%d\n", avg, num);
    for (int i = 0; i < 10; i++)
    {
        if (a[i] < avg)
            printf("%d ", a[i]);
    }
}

3、截圖

在這裏插入圖片描述

user avatar yudinghou 頭像 u_13317 頭像 hello_64e0ef2dbbb8f 頭像
3 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.