对这个问题感到抱歉,这是我的第一个C ++项目,我有点困惑。我要求用户输入3个单独的东西。例如,我从数字80开始。我问用户3个问题。 1)你喜欢蓝色还是黄色?输入1表示蓝色,2表示黄色。如果用户输入1表示蓝色,则将数字80乘以2.如果输入2表示黄色,则将80乘以3.
如果这看起来像是在正确的轨道上,有人可以告诉我吗?再次感谢和抱歉初学者问题。
cout << "Please enter a color blue or yellow. Type 1 for Blue, 2 for Yellow";
cin >> bp1;
// Multiply by 2 if Blue is chosen, 3 if Yellow is chosen.
if (bp1 = 1)
num = num*2;
if (bp1 = 2)
num = num*3;
答案 0 :(得分:2)
您打算编写比较运算符==
if (bp1 == 1)
if (bp1 == 2)
// ^^
if (bp1=1)
将始终从operator=
答案 1 :(得分:2)
您的if语句中存在问题
必须是这样的:
if (bp1 == 1)
num = num*2;
if (bp1 == 2)
num = num*3;
答案 2 :(得分:2)
欢迎来到C ++世界!你肯定是在正确的轨道上,但有一些问题。首先,您在if语句中使用的运算符是赋值运算符,因此您的语句将始终返回true。这应该是比较运算符(==)。其次,我建议在这里使用if-else if语句,因为您可能不需要同时检查两次。以下就足够了:
if(bp1 == 1)
{
num = num * 2;
}
else if(bp1 == 2)
{
num = num * 3;
}
答案 3 :(得分:0)
更简单:
而不是:
if(bp1 == 1)
num = num * 2;
else if (bp1 == 2)
num = num * 3;
你可以写这个
num = num * (bp + 1)
甚至
num *= (bp + 1)