3、用vi编写一程序test.c,要求输入十个同学的计算机成绩,计算并输出这十个同学的计算机平均成绩,并用冒泡排序降序输出这十个数,并运行通过;
时间: 2024-10-21 16:06:43 浏览: 24
在vi编辑器中编写`test.c`程序的步骤如下:
1. 打开vi编辑器并创建新文件:
```sh
vi test.c
```
2. 编辑程序内容,首先包含必要的头文件,并定义常量和变量:
```c
#include <stdio.h>
#include <stdlib.h> // 包含用于排序的qsort函数
#define NUM_STUDENTS 10
int scores[NUM_STUDENTS]; // 存储学生成绩
float sum = 0; // 存放总成绩
```
3. 编写主函数,用于获取输入,计算平均分,以及排序并输出成绩:
```c
int main() {
// 输入学生的成绩
for (int i = 0; i < NUM_STUDENTS; i++) {
printf("请输入第 %d 位同学的计算机成绩:", i + 1);
scanf("%d", &scores[i]);
sum += scores[i];
}
// 计算平均分
float avg_score = sum / NUM_STUDENTS;
printf("平均成绩: %.2f\n", avg_score);
// 冒泡排序
qsort(scores, NUM_STUDENTS, sizeof(int), compare); // 使用标准库函数排序
printf("成绩按降序排序:\n");
// 自定义比较函数,用于冒泡排序
int compare(const void* a, const void* b) {
return *(int*)b - *(int*)a;
}
// 输出排序后的成绩
for (int i = 0; i < NUM_STUDENTS; i++) {
printf("学生 %d: %d\n", i + 1, scores[i]);
}
return 0;
}
```
4. 离开vi编辑器保存并退出:
```bash
:wq // 保存并退出
```
5. 编译并运行程序:
```sh
gcc test.c -o test
./test
```
运行上述程序后,它会提示你输入每位同学的成绩,然后计算平均分,最后按降序展示成绩。
阅读全文