如果你想用范围for语句遍历整个数组的话, 你要确保你开的数组的大小正正好int arr[10];//如果这里开成11或者12就会有问题int main(){ int h, sum = 0; for(int i=0; i<10; ++i) cin >> arr[i]; cin >> h; for(auto i : arr) { if(i <= h + 30) ++sum; } cout << sum << endl; return 0;}