从键盘输入10个学生的成绩(整型)至数组中,输出所有成绩(用一个空格分隔),并将最低分及所在下标、最高分及所在下标、以及平均分。 最后逆序排序后输出所有学生成绩。
时间: 2024-06-06 14:09:49 浏览: 19
好的,我明白了。以下是回答:
请先输入10个学生的成绩:
(接下来输入10个整数,以空格分隔)
输入完成后,以下是该程序的输出结果:
所有成绩:(以空格分隔)(这里输出输入的10个数)
最低分为:(最低分的值) , 下标为:(最低分所在数组的位置)
最高分为:(最高分的值) , 下标为:(最高分所在数组的位置)
平均分为:(平均分的值)
逆序排序后的所有学生成绩:(以空格分隔)(这里输出输入10个数的逆序排序结果)
相关问题
c语言从键盘输入10个学生的成绩(整型)至数组中,输出所有成绩(用一个空格分隔),并将最低分及所在下标、最高分及所在下标、以及平均分。 最后逆序排序后输出所有学生成绩。
我理解了你的要求。以下是代码示例:
```c
#include <stdio.h>
int main() {
int score[10];
int i, sum = 0, max = 0, min = 100, max_index = 0, min_index = 0;
// 读入成绩
printf("请输入10个学生的成绩:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &score[i]);
sum += score[i];
if (score[i] > max) {
max = score[i];
max_index = i;
}
if (score[i] < min) {
min = score[i];
min_index = i;
}
}
// 输出成绩
printf("所有成绩:");
for (i = 0; i < 10; i++) {
printf("%d ", score[i]);
}
printf("\n最低分:%d, 下标:%d\n", min, min_index);
printf("最高分:%d, 下标:%d\n", max, max_index);
printf("平均分:%.2f\n", (float)sum / 10);
// 逆序排序
int temp;
for (i = 0; i < 5; i++) {
temp = score[i];
score[i] = score[9 - i];
score[9 - i] = temp;
}
// 输出排序后的成绩
printf("逆序排序后的成绩:");
for (i = 0; i < 10; i++) {
printf("%d ", score[i]);
}
printf("\n");
return 0;
}
```
请问我还能为您做些什么吗?
从键盘输入10个学生的百分制成绩存放到数组中,并倒序输出。
好的,这是一个比较简单的问题,下面是一个 C++ 的示例代码:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
const int n = 10;
int scores[n];
// 读入成绩
cout << "请输入" << n << "个学生的成绩:" << endl;
for (int i = 0; i < n; i++) {
cin >> scores[i];
}
// 倒序排序
sort(scores, scores + n, greater<int>());
// 输出成绩
cout << "成绩倒序排列如下:" << endl;
for (int i = 0; i < n; i++) {
cout << scores[i] << " ";
}
cout << endl;
return 0;
}
```
这段代码首先定义了一个长度为 `n` 的整型数组 `scores` 来存放学生的成绩,然后通过 `for` 循环和 `cin` 语句从键盘输入每个学生的成绩,并将其存放到数组中。
接着,使用 `sort` 函数和 `greater<int>()` 参数对数组进行倒序排序。其中 `sort` 函数是 C++ 标准库中的一个排序函数,`greater<int>()` 代表按照整型数值的降序排列。
最后,使用另一个 `for` 循环和 `cout` 语句输出排好序的成绩。
希望这个示例代码可以帮到你!