代码如下:
#include<bits/stdc++.h>
using namespace std;
int a[100];
int n;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
int p=upper_bound(a+1,a+n+1,2,greater<int>())-a;
cout<<p;
return 0;
}
此代码是求a数组中第一个小于2的数的下标,可是为什么每当满足条件的数值的下标是1时这份代码都会输出n+1,谢谢解答