定义一种结构体类型,成员包含学生学号和学生成绩。编写3个函数,其中第一个函数初始化第一个学生的学号为20220401,用自增的方法为其他n-1个学生的学号赋值,如50个学生的学号分别为20220401~20220450.第二个函数用随机函数给每个学生的成绩赋值(百分制成绩0~100)。第三个函数输出所有学生的学号和成绩,要求每行输出一个学生的学号和成绩。编写主函数,调用以上三个函数。
时间: 2023-04-12 14:01:11 浏览: 108
以下是C知道的回答:
定义结构体类型:
```
typedef struct {
int id;
int score;
} Student;
```
初始化学生学号:
```
void initId(Student* students, int n) {
students[0].id = 20220401;
for (int i = 1; i < n; i++) {
students[i].id = students[i-1].id + 1;
}
}
```
随机赋值学生成绩:
```
void randomScore(Student* students, int n) {
for (int i = 0; i < n; i++) {
students[i].score = rand() % 101;
}
}
```
输出学生学号和成绩:
```
void printStudents(Student* students, int n) {
for (int i = 0; i < n; i++) {
printf("学号:%d,成绩:%d\n", students[i].id, students[i].score);
}
}
```
主函数:
```
int main() {
int n = 50;
Student students[n];
initId(students, n);
randomScore(students, n);
printStudents(students, n);
return 0;
}
```
希望这个回答能够帮助到你!
阅读全文