第32330题 单选题
以下C++代码实现查找int类型数组的最小值,运行时在特定测试用例下输出错误结果,请问错误的根本原因是?
#include <iostream>
#include <vector>
using namespace std;

int findMin(const vector<int>& nums) {
    int min = 0;
    for (int num : nums) {
        if (num < min) {
            min = num;
        }
    }
    return min;
}

int main() {
    vector<int> test = {1, 4, 2, 8, 5};
    cout << findMin(test) << endl; // 此处输出为0,与预期最小值1不符
    return 0;
}
A

未处理数组为空的边界情况,空数组访问会触发程序崩溃

B

最小值初始值设置不合理,未覆盖数组所有元素均大于初始值的极值场景

C

遍历数组的变量类型错误,应该使用size_t类型避免溢出

D

比较运算符使用错误,应该使用<=代替<判断最小值

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析