已知一个班有五个学生,要求从键盘输入这二公学生的成绩,求出他们的平均分,并将他们的成绩接从大到小的顺序输出。
时间: 2024-01-02 08:03:46 浏览: 26
好的,这是一个简单的计算和排序问题。以下是一个C++的示例代码:
```
#include <iostream>
#include <algorithm> //用于排序
using namespace std;
int main() {
int scores[5];
float sum = 0;
for (int i = 0; i < 5; i++) {
cin >> scores[i];
sum += scores[i];
}
float average = sum / 5;
sort(scores, scores + 5, greater<int>()); //从大到小排序
cout << "平均分是:" << average << endl;
cout << "成绩从大到小排序:" << endl;
for (int i = 0; i < 5; i++) {
cout << scores[i] << " ";
}
return 0;
}
```
请注意,这只是一个示例代码,并不是最优解。对于更复杂的问题,可能需要更复杂的算法和数据结构。
相关问题
c语言已知一个班有n个学生,要求从键盘输入这n个学生的成绩,求出他们的平均分,并将他们的成绩按从大到小的顺序输出。
以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int n, i, j, temp;
float sum = 0, avg;
printf("请输入学生人数:");
scanf("%d", &n);
int score[n];
printf("请输入每位学生的成绩:\n");
for (i = 0; i < n; i++) {
scanf("%d", &score[i]);
sum += score[i];
}
avg = sum / n;
printf("平均分为:%.2f\n", avg);
for (i = 0; i < n - 1; i++) {
for (j = i + 1; j < n; j++) {
if (score[i] < score[j]) {
temp = score[i];
score[i] = score[j];
score[j] = temp;
}
}
}
printf("按成绩从大到小排序为:\n");
for (i = 0; i < n; i++) {
printf("%d ", score[i]);
}
return 0;
}
```
程序的思路如下:
1. 从键盘输入学生人数n;
2. 定义一个长度为n的数组score,从键盘输入每个学生的成绩,并求和;
3. 计算平均分avg;
4. 冒泡排序将成绩从大到小排序;
5. 输出平均分和从大到小排序后的成绩。
已知一个班有工企学生,要求从键盘输入这口 个学生的成績,求出他们的平均分,并将他们的成绩按从大到小的顺序输出。
好的,我可以为你提供帮助。以下是解决这个问题的 Python 代码:
```python
# 从键盘输入每个学生的成绩
scores = []
n = int(input("请输入学生人数:"))
for i in range(n):
score = float(input("请输入第{}个学生的成绩:".format(i+1)))
scores.append(score)
# 计算平均分
avg_score = sum(scores) / n
print("平均分为:{:.2f}".format(avg_score))
# 将成绩从大到小排序并输出
sorted_scores = sorted(scores, reverse=True)
print("成绩从大到小排序为:")
for score in sorted_scores:
print(score)
```
这段代码首先从键盘输入每个学生的成绩,然后计算出平均分并输出,最后将成绩从大到小排序并输出。希望能对你有所帮助!