请问C++中cin>>a,b,c实际上输入了啥子呢?

// 求从键盘输入的三个整数的平均数并输出。
#include<iostream>
using namespace std;
int main()
{
	int a,b,c;
	float d; 
	cout<<"请输入三个整数(用空格隔开):";
	cin>>a;
	cin>>b;
	cin>>c;//注意并非cin>>a,b,c 
	d=(a+b+c)/3.0;//注意此处有".0" 
	cout<<"平均数是:"<<d;
	return 0;
 } 

此段代码中若改为cin>>a,b,c 为什么输出结果为1?

如果你想要连续输入a,b,c,cin需要做的是:

cin>>a>>b>>c;

而不是cin>>a,b,c;

cin>>a,b,c;等价于cin>>a;    b;   c;只是读入了一个a的数据,b和c在那罚站呢,因为没人给他>>送进来数据。

如果问题得到解决,记得采纳一波。

 

=======================================

在评论区的里评论不知道为什么乱码了,在这里重新发一下。

    cout<<a<<" "<<b<<" "<<c<<endl;
    cin>>a,b,c;
    cout<<a<<" "<<b<<" "<<c<<endl;

尝试将这段代码加到你的代码中。自己输出一下看看a,b,c在cin前后的变化情况。因为只是对变量进行声明而不进行赋值操作的话,会导致变量中的数值是未知的。