求n个整数中倒数第二小的数,请问这个问题具体用 C 语言的程序编写思想的过程的方式怎么来做

Problem Description
求n个整数中倒数第二小的数。
每一个整数都独立看成一个数,比如,有三个数分别是1,1,3,那么,第二小的数就是1。

Input
输入包含多组测试数据。
输入的第一行是一个整数C,表示有C测试数据;
每组测试数据的第一行是一个整数n,表示本组测试数据有n个整数(2<=n<=10),接着一行是 n个整数 (每个数均小于100);

Output
请为每组测试数据输出第二小的整数,每组输出占一行。

Sample Input
2
2
1 2
3
1 1 3

Sample Output
2
1

2个回答

可以遍历一遍:
设两个临时变量a,b;数组第一个值和第二值比较,较小值赋值给a,较大值赋值给b;从第三个数组值起依次和b比较。
如果小于b,赋值给b,再继续与a比较;
如果小于a,a赋值给b,该数组值赋值给a;如果大于a,pass。
最后b就是第2小值。

首先找到n个整数中最小的数并排除这个数,将这n个数遍历一遍即可找到,然后在剩下的数中按相同的操作找最小的数,即得倒数第二小的数。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐