解题思路:先把成绩存放在数组中,再将数组进行简单的从大到小排序,取倒数第二个元素就是倒数第二名。
注意事项:我采用的是快速排序的方法,写着比较省事,也可以使用其他的排序方法
参考代码:
#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 人评分
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:552 |
【明明的随机数】 (C++代码)浏览:779 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:664 |
分糖果 (C++代码)浏览:1438 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:512 |
WU-输出九九乘法表 (C++代码)浏览:1665 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:552 |
图形输出 (C语言代码)浏览:1376 |
【偶数求和】 (C语言代码)浏览:431 |
局部变量作函数返回值的问题浏览:964 |