1.可以先排序后抽出中间那个2.ifif(a>=b&&a<=c||a<=b&&a>=c)则aif(b>=a&&b<=c||b<=a&&b>=c)则cif(c>=a&&c<=b||c<=a&&c>=b)则b只输入三个数的话很简单,只需要对三个数排序一下,起泡就可以。如果输入的数很多的话,比如求100W个数据第1W大的是哪个可以用二叉堆,取100W中的物理位置前1W的数建立二叉堆,以后的99W数据都和堆中第1W个比较,如果大,就做一次替换(这个时候要注意保持堆的特性)。最后堆中最后一个数字就是结果。