普通做法:
#include<cstdio>
using namespace std;
int main()
{
string s;
getline(cin,s);
string r;
for(int i=0;i<s.size();i++)
{
if(s[i]!=' ') r+=s[i];
else
{
r+=' ';
//下面三行被称为第一类双指针运算法
int j=0;//遍历连续空格
while(j<s.size()&&s[j]==' ') j++;
i=j-1;//i会++一次
}
}
cout<<r<<endl;
return 0;
}
优雅做法:#include<cstdio>
using namespace std;
int main()
{
string s;
while(cin>>s) cout<<s<<' ';//cin自动过滤空格
return 0;
}