c语音如何定义数组用以存放学生的成绩,从键盘输入10个学生成绩;将学生成绩按照从高到低进行排序并输出
时间: 2023-03-19 20:21:50 浏览: 760
C语言可以使用如下的代码定义一个包含10个元素的数组来存放学生的成绩:
```c
float scores[10];
```
这会创建一个名为scores的浮点数类型的数组,它包含10个元素。
接下来,可以使用for循环来从键盘输入学生成绩,并将它们存储在数组中:
```c
for (int i = 0; i < 10; i++) {
printf("请输入第%d个学生的成绩:", i+1);
scanf("%f", &scores[i]);
}
```
这将循环10次,每次提示用户输入一个学生成绩,并将其存储在数组的适当位置。
最后,可以使用冒泡排序法将学生成绩按照从高到低进行排序。以下是一个简单的实现:
```c
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9-i; j++) {
if (scores[j] < scores[j+1]) {
float temp = scores[j];
scores[j] = scores[j+1];
scores[j+1] = temp;
}
}
}
```
这个排序算法将比较相邻的两个元素,并将它们交换位置,直到整个数组按照从大到小的顺序排列。
最后,可以使用for循环将排序后的学生成绩输出到屏幕上:
```c
printf("学生成绩从高到低排序为:\n");
for (int i = 0; i < 10; i++) {
printf("%.1f ", scores[i]);
}
```
阅读全文