#include <iostream>
using namespace std;
void main()
{
int leftover;
int gold = 3900;//satisfies the if else statement
if( gold>=4100){//successfully build item
leftover = gold-4100;
}
else if(4100>gold>=3500){
leftover = gold-3500;
}
cout << leftover << endl;
system("pause");
}
该代码不起作用,它将显示未初始化就使用了剩余的代码。但是,当我更改gold(etc 4200)的值以满足if语句时,它将起作用,并显示从4100中扣除了gold之后的余数。声明还非常感谢您告诉我出了什么问题!
最佳答案
4100>gold>=3500
不会执行您的想法。评估为(4100>gold) >= 3500
,取决于gold
的值可以是0 >= 3500
或1>3500
。查找运算符优先级。
你可能想要
(4100>gold) && (gold>=3500)
关于c++ - 为什么我不能使用if和if else语句将值赋给变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23895538/