/*
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello
*/
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
getline(cin,str);
cout<<"你输入的是"<<str<<endl;
int len=str.length();// 缺少str.length ()
int p=len,k;
for(int i=len-1;i>=0;i--)
{
if(str[i] == ' ')
{
for(k=i+1;k<=p-1;k++)
{
cout<<str[k];
}
cout<<" ";
p=i ;//第一次用完之后要保存,后面的也是。记录的是当前找到 空格 的位置
}
}
//到这里的时候还剩第一个没输出,因为i=0,也没找到 i 前面有空格
for(int i=0;i<p;i++)cout<<str[i];//
return 0;
}
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello
*/
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
getline(cin,str);
cout<<"你输入的是"<<str<<endl;
int len=str.length();// 缺少str.length ()
int p=len,k;
for(int i=len-1;i>=0;i--)
{
if(str[i] == ' ')
{
for(k=i+1;k<=p-1;k++)
{
cout<<str[k];
}
cout<<" ";
p=i ;//第一次用完之后要保存,后面的也是。记录的是当前找到 空格 的位置
}
}
//到这里的时候还剩第一个没输出,因为i=0,也没找到 i 前面有空格
for(int i=0;i<p;i++)cout<<str[i];//
return 0;
}
该程序接收一句英语作为输入,然后输出单词顺序颠倒的句子。例如,输入'Hello World Here I Come',输出为'Come I Here World Hello'。程序通过遍历字符串,找到每个单词的边界并进行反转输出。
1万+

被折叠的 条评论
为什么被折叠?



