C语言现有一个班4 个学生,5 门课程。实现下列功能: ⑴求第1门课程的平均分; ⑵找出有两门以上课程不及格的学生,并输出他们的学号和全部课程成绩及平均成绩; ⑶找出平均成绩在90分以上或全部课程成绩在85分以上的学生。
时间: 2024-03-20 22:42:30 浏览: 52
zuoye.5.cpp
好的,这是一个简单的C语言问题,我来帮你回答。
首先,我们需要使用一个二维数组来存储4个学生5门课程的成绩:
```c
int scores[4][5];
```
然后,我们需要输入每个学生的成绩,可以使用一个循环来完成:
```c
for (int i = 0; i < 4; i++) {
printf("请输入第%d个学生的5门课程成绩:\n", i + 1);
for (int j = 0; j < 5; j++) {
scanf("%d", &scores[i][j]);
}
}
```
⑴求第1门课程的平均分:
```c
float avg = 0;
for (int i = 0; i < 4; i++) {
avg += scores[i][0];
}
avg /= 4;
printf("第1门课程的平均分是:%.2f\n", avg);
```
⑵找出有两门以上课程不及格的学生,并输出他们的学号和全部课程成绩及平均成绩:
```c
for (int i = 0; i < 4; i++) {
int count = 0;
for (int j = 0; j < 5; j++) {
if (scores[i][j] < 60) {
count++;
}
}
if (count >= 2) {
float avg = 0;
printf("学生%d的全部成绩为:", i + 1);
for (int j = 0; j < 5; j++) {
printf("%d ", scores[i][j]);
avg += scores[i][j];
}
avg /= 5;
printf("平均成绩为:%.2f\n", avg);
}
}
```
⑶找出平均成绩在90分以上或全部课程成绩在85分以上的学生:
```c
for (int i = 0; i < 4; i++) {
float avg = 0;
int flag = 1;
for (int j = 0; j < 5; j++) {
if (scores[i][j] < 85) {
flag = 0;
break;
}
avg += scores[i][j];
}
if (flag || avg / 5 >= 90) {
printf("学生%d的全部成绩为:", i + 1);
for (int j = 0; j < 5; j++) {
printf("%d ", scores[i][j]);
}
printf("\n");
}
}
```
这样就实现了上述三个功能。完整代码如下:
阅读全文