输入n个学生的姓名及其3门功课成绩,要求按输入的逆序逐行输出每个学生的姓名、3门课成绩和平均成绩。若有学生平均成绩低于60分,则不输出该学生信息。
时间: 2023-09-10 11:04:53 浏览: 123
### 回答1:
这是一个简单的输入输出和计算平均值的问题,可以使用数组来存储学生信息和成绩。以下是一个C++的示例代码:
```c++
#include <iostream>
#include <string>
using namespace std;
const int MAX_N = 100;
int main() {
int n;
string names[MAX_N];
int scores[MAX_N][3];
double averages[MAX_N];
cin >> n;
for (int i = 0; i < n; i++) {
cin >> names[i];
for (int j = 0; j < 3; j++) {
cin >> scores[i][j];
}
averages[i] = (scores[i][0] + scores[i][1] + scores[i][2]) / 3.0;
}
for (int i = n - 1; i >= 0; i--) {
if (averages[i] >= 60) {
cout << names[i] << " ";
for (int j = 0; j < 3; j++) {
cout << scores[i][j] << " ";
}
cout << averages[i] << endl;
}
}
return 0;
}
```
这段代码首先定义了一个最大长度为100的数组来存储学生信息和成绩。然后通过输入来读取学生信息和成绩,并计算平均值。最后逆序遍历数组,输出符合条件的学生信息。
### 回答2:
首先,我们可以使用一个列表存储学生的信息,每个学生的信息包括姓名、3门课成绩和平均成绩。然后,我们按逆序逐行输出每个学生的信息。
下面是一个实现的示例代码:
```python
n = int(input("请输入学生的个数:"))
students = []
# 输入每个学生的信息
for i in range(n):
name = input("请输入第{}个学生的姓名:".format(i+1))
score1 = int(input("请输入该学生的第1门课成绩:"))
score2 = int(input("请输入该学生的第2门课成绩:"))
score3 = int(input("请输入该学生的第3门课成绩:"))
average = (score1 + score2 + score3) / 3
# 若平均成绩低于60分,则不将该学生信息添加到列表中
if average < 60:
continue
student_info = [name, score1, score2, score3, average]
students.append(student_info)
# 按逆序逐行输出每个学生的信息
for student in reversed(students):
print("姓名:{},课程成绩:{},{},{},平均成绩:{}"
.format(student[0], student[1], student[2], student[3], student[4]))
```
注意,需要确保输入的成绩都是有效的数字,并检查每个学生的平均成绩是否低于60分。在输出学生信息时,可以根据需要进行格式化输出。
### 回答3:
假设输入的学生个数为n,每个学生的姓名为name,3门课的成绩为score1、score2、score3。首先定义一个列表students来存储学生信息。然后按照逆序的方式输入n个学生的姓名及其3门功课成绩,计算每个学生的平均成绩,如果平均成绩低于60分,则不将该学生信息加入到students列表中。
```python
students = []
n = int(input("请输入学生个数:"))
for i in range(n):
name = input("请输入学生姓名:")
score1 = float(input("请输入第一门成绩:"))
score2 = float(input("请输入第二门成绩:"))
score3 = float(input("请输入第三门成绩:"))
average_score = (score1 + score2 + score3) / 3
if average_score >= 60:
students.append([name, score1, score2, score3, average_score])
# 逆序输出学生信息
for student in reversed(students):
print("姓名:", student[0])
print("第一门成绩:", student[1])
print("第二门成绩:", student[2])
print("第三门成绩:", student[3])
print("平均成绩:", student[4])
```
这样就可以实现输入n个学生的姓名及其3门功课成绩,按输入的逆序逐行输出每个学生的姓名、3门课成绩和平均成绩。如果有学生平均成绩低于60分,则不输出该学生信息。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)