用户输入10个数字,找到最大负值及其索引/位置

时间:2015-08-05 12:28:15

标签: c++ for-loop

用户输入10个数字,找到最大负值及其索引/位置。

ps:必须使用“for”。 帮助plz -_-“

这是我的代码:

#include <iostream>

using namespace std;

int main() {

    double value, maxValue, index;

    cin >> value;
    maxValue = value;
    index = 1;

    for (int i = 2; i <= 10; i++) {
        cin >> value;

        if (value > maxValue&&value<0) {
            maxValue = value;
                index = i;
        }

    }
    cout << "Max value = " << maxValue << " index = " << index << endl;


}

2 个答案:

答案 0 :(得分:1)

更改行

if (value < maxValue && value<0)

答案 1 :(得分:0)

这是我提出的解决方案:

#include <iostream>

using namespace std;

int main() {
    double maxValue;
    int index = -1;

    for (int i = 0; i < 10; i++) {
        double value;
        cin >> value;
        if(!(value < 0)) {
            continue;
        }
        if(index >= 0) {
            if(value > maxValue) {
                maxValue = value;
                index = i;
            }
        } else {
            maxValue = value;
            index = i;
        }
    }
    if (index >= 0) {
        cout << "Greatest negative value is " << maxValue << " at index " << (index+1) << endl;
    } else {
        cout << "No negative value issued" << endl;
    }
}