所以我试图使用这个代码写入两个不同的set参数中的变量,但它不允许我输入第二个cin的值。
#include<iostream>
using namespace std;
int main()
{
int T1,T2,T3,D,car_type;
double total;
cout<<"Please enter the values for T1 T2 T3 D: ";
cin>>T1,T2,T3,D;
cout<<endl;
cout<<"Please Choose a Car where 1 = Honda, 2 = Toyota, 3 = Mercedes: ";
cin>>car_type;
if (car_type = 1)
{
total = T1*D;
cout<<"The cost of a full tank for a Honda is "<<total<<" Dirhams.."<<endl;
}/* else
if (car_type = 2)
{
total = T2*D;
cout<<"The cost of a full tank for a Toyota is "<<total<<" Dirhams.."<<endl;
} else
if (car_type = 3)
{
total = T3*D;
cout<<"The cost of a full tank for a Mercedes is "<<total<<" Dirhams.."<<endl;
} */
}
你能告诉我我哪里出错吗?
答案 0 :(得分:6)
在C ++中,逗号可以出现在声明(变量声明,参数列表)和表达式中。在表达式中,它是一个运算符,用于计算操作数并返回最后一个操作数。
基本上
cin>>T1,T2,T3,D;
评估T1,T2,T3
和D
,然后返回D
,这意味着,在您的特定情况下,它等同于
cin>>D;
要在operator>>
上正确链接cin
,请执行:
cin >> T1 >> T2 >> T3 >> D;
答案 1 :(得分:0)
cin>>T1,T2,T3,D;
没有做你要做的事。要理解那读@Luchian Grigore的答案。这就是你的代码应该是
cin>>T1>>T2>>T3>>D;
要使用cin
接受多个值,请使用上面的代码(即,使用>>
分隔变量而不使用,
)。
同时更改
if (car_type = 1)
到
if (car_type == 1)
=
是一个赋值运算符,在您的代码中,它将值1
赋给car_type
。要检查是否使用==
。