为什么我输出的结果是2000?
#include <stdio.h>
int main(void) {
int i, j, N, x[100];
double sum = 0, ave;
scanf("%d", &N);
for (i = 0; i < N; i++) {
scanf("%d", &x[i]);
}
int a, t, min = x[0];
for (i = 0; i < N; i++) {
if (min > x[i]) {
min = x[i];
t = i;
}
}
for (i = t; i < N - 1; i++) {
x[i] = x[i + 1];
}
int max = x[0];
for (i = 0; i < N - 1; i++) {
if (max < x[i]) {
max = x[i];
a = i;
}
}
for (i = a; i < N - 2; i++) {
x[i] = x[i + 1];
}
for (j = 0; j < N - 2; j++) {
sum += x[i];
}
ave = sum / (N - 2);
printf("%.5f", ave);
return 0;
}