解题思路:先把成绩存放在数组中,再将数组进行简单的从大到小排序,取倒数第二个元素就是倒数第二名。
注意事项:我采用的是快速排序的方法,写着比较省事,也可以使用其他的排序方法
参考代码:
#include <stdio.h> #include <stdlib.h> int cmp(const void *a,const void *b) { return *(int *)b - *(int *)a; } int main() { int C; scanf("%d",&C); for(int i = 0;i < C;i++) { int n; scanf("%d",&n); int a[n]; for(int j = 0;j < n;j++) scanf("%d",&a[j]); qsort(a, n, sizeof(int), cmp); printf("%d\n",a[n-2]); } }
0.0分
0 人评分