为什么getline()后要两次回车????(将输入的字符串按单词倒序输出)
2015-05-13 23:11
330 查看
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int main()
{
string s;
getline(cin,s);
int len=s.size();
for(int i=len-1;i>=0;i--)
{
if(s[i]==' ')
{
string s1;
char *p=&s[i];
s1.assign(p+1,s.end());
cout<<s1<<" ";
s.erase(p,s.end());
}
}
cout<<s<<endl;
return 0;
}
#include<string>
#include<algorithm>
using namespace std;
int main()
{
string s;
getline(cin,s);
int len=s.size();
for(int i=len-1;i>=0;i--)
{
if(s[i]==' ')
{
string s1;
char *p=&s[i];
s1.assign(p+1,s.end());
cout<<s1<<" ";
s.erase(p,s.end());
}
}
cout<<s<<endl;
return 0;
}
相关文章推荐
- 键盘输入一行字符串,每个单词倒序输出
- 为什么两次调用同一函数, 输入相同, 输出却不同呢? (解决困扰自己好几天的问题, 还是有点激动哈, 奖励自己一顿丰厚的晚餐)
- 键盘输入一行字符串,每个字符倒序输出
- 【嵌入式系统学习记录】练习:把句子中的单词倒序;(输入"i am from shanghai",输出"shanghai from am i")
- 倒序输出一组字符串。例如输入:“478.abc”,输出:“cba.874”
- 解释为什么用gets()会少输入一行字符串就能输出结果
- 输入一个字符串,输出长度最长的单词
- VC6.0 中 getline(cin, string) 需按两次回车解决方法,getiline输入时的用法
- 7.10 写一函数,输入一行字符,将此字符串中最长的单词输出。
- 8.10 写一函数,输入一行字符,将此字符串中最长的单词输出。(改)
- 输入任意长字符串(以.结束),倒序输出-------递归
- 字符串中的每个单词倒序输出
- 给定一字符串,将每个单词的字符顺序倒置,单词间的顺序不变。例如:输入字符串“I love you”,输出“I evol uoy”。
- 错了两次,就是知先序和中序求后序的,但是不能用字符串,因为输入中间有空格,输出也有空格
- 写一个函数,输入一行字符,将此字符串中最长的单词输出
- 为什么java输出字符串数组名直接输入字符数组?
- 以单词为单位倒序输出一个字符串
- 输入字符串按照单词逆序输出
- 写一个函数,输入一行字符,将此字符串中最长的单词输出。