【发布时间】:2011-09-19 05:35:50
【问题描述】:
#include <iostream>
using namespace std;
int main()
{
int positiveInteger;
cout << "Please input an integer up to 100." << endl;
cin >> positiveInteger;
int result = 0;
for (int i = 0; i <= positiveInteger; i++)
{
if ( positiveInteger >= 0 )
{
result += i;
}
else
{
cout << "Please input a positive integer." << endl;
}
}
cout << result;
return 0;
}
上面我有一个for 循环,中间有一个 if else 语句。我很困惑,因为我希望它是这样,当我输入一个非负整数时,它将循环 if 结果。但我希望这样,如果我输入一个负数,它会说请输入一个正整数。这就是为什么我在 if 语句中设置它,只有上面的数字和 = 到 0 会返回结果,但是如果我输入一个负数,我只会得到 0,我希望它说“请输入一个正整数”。我不明白我做错了什么。 if 语句不是 if true 拉 if 并且 if it not true 拉 else 吗?还是我错过了什么?
【问题讨论】:
-
等一下,我刚刚意识到结果返回 0,但为什么不说请输入一个正整数?
标签: c++ if-statement