例题一:
利用冒泡排序打印班级前五名的成绩
注:人数和成绩需要自己输入。
比如 班级6个人 输出前五的成绩
int main() {
int arr[40] = { 0 };
int n = 0;
scanf("%d", &n); //输入人数;
int i = 0;
for (i =0; i <n ; i++) {
scanf("%d", &arr[i]); //输入n个人数的成绩,放数组里面存放起来
}
for (i = 0; i <n-1 ; i++) {
int j = 0;
for (j = 0; j <n-1-i; j++) {
if (arr[j] > arr[j+1]) { // 升序
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
for (i = n - 1; i >= n - 5; i--) { //输入 因为是升序 ---从后面往前面--- 输出前五名
printf("%d ", arr[i]);
}
return 0;
}
原文:https://blog.51cto.com/u_15100290/2752540