解题思路:一次循环,双管齐下
int sum(int* numbers, int numbersCount) {
if (numbersCount==0 || numbersCount==1) return 0;
int min = numbers[0],max = numbers[0],sum=numbers[0];
for (int i=1;i<numbersCount;i++) {
sum+=numbers[i];
min = min<numbers[i]?min:numbers[i];
max = max>numbers[i]?max:numbers[i];
}
return sum-min-max;
}