请问下面该如何编程?

第8题
输入N个整数,删除其中的最大值和最小值。按原来次序重新输出。

输入格式
第一行1个正整数:N,范围在[1,1000]。
第2行有N个整数,范围在[1,10000]。

输出格式
按原来次序输出剩下的数。

输入/输出例子1
输入:

5
120 150 150 98 77

输出:

120 98
作答区域

#include
using namespace std;
int a[105],b[110],n,maxn,sum,ans;
int main(){
cin>>n;
for (int i=0;i
cin>>a[i];
}
for (int i=0;i
if(a[i+1]>a[i])
ans+=a[i+1]-a[i];
// cout< }
cout<
return 0;
}

遍历一遍找出最大最小值,然后按原顺序逐个输出,如果是最大最小值则忽略

#include<bits/stdc++.h>
using namespace std;
int a[1000],n,max=0,min=0;
int main(){
cin>>n;
for (int i=0;i<n;i++){
cin>>a[i];
if(a[i] > a[max])
      max = i;
if(a[i] < a[min])
      min  = i;
}
for (int i=0;i<n;i++){
    if(i!=min && i!=max)
        cout<<a[i]<<" ";
}
return 0;
}

遍历一遍找到最大最小值。
在遍历一遍进行输出,遇到最大最小值进行跳过处理