C++程序——数组与函数

利用int student[80]数组,存储80位学生的成绩,成绩利用rand()函数生成,成绩分布区间为[50,100]。
1、int main()函数负责声明数组并计算平均分。
2、void arrayInit(int *p)函数负责利用rand()函数生成80位学生成绩。
3、void biggerAve(int *p, int ave)函数负责输出所有大于平均分的成绩并给出该成绩在student[]数组中的位置。
4、void searchOne(int *p)函数提供分数查询服务,让用户输入一个分数,输出所有成绩等于该分数在数组中的位置

https://blog.csdn.net/baidu_29701003/article/details/78260131

#include <iostream>
#include <cmath>

using namespace std;

constexpr int StudentNumber = 80;

void arrayInit(int *p, int len) {
    for(int i = 0; i != len; ++i) {
        // 取模[0, 50] + 50 = [50, 100]
        p[i] = rand()%51 + 50;
    }
}

void biggerAve(int *p, int len, int ave) {
    cout << "Score bigger than " << ave << "\n";

    for(int i = 0; i != len; ++i) {
        if(p[i] > ave) {
            cout << p[i] << "\n";
        }
    }
}

void searchOne(int *p, int len, int wantedScore) {
    cout << "Score equal " << wantedScore << "\n";

    for(int i = 0; i != len; ++i) {
        if(p[i] == wantedScore) {
            cout << p[i] << "\n";
        }
    }
}

int main(int argc, const char * argv[]) {
    int student[StudentNumber];

    arrayInit(student, StudentNumber);

    biggerAve(student, StudentNumber, 80);
    searchOne(student, StudentNumber, 70);

    return 0;
}

这里数组需要知道大小,已在Xcode上测试通过,不习惯这个编辑器