题目描述
将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”
所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符
接口说明
/**
* 反转句子
*
* @param sentence 原句子
* @return 反转后的句子
*/
public String reverse(String sentence);
输入描述:
将一个英文语句以单词为单位逆序排放。
输出描述:
得到逆序的句子
输入例子:
I am a boy
1 #include <iostream> 2 #include <string> 3 4 using namespace std; 5 6 7 int main(void) 8 { 9 string str; 10 int end; 11 getline(cin, str); 12 end = str.size(); 13 for (int i = str.size() - 1; i >= 0; i--) 14 { 15 16 if (str[i] == ' ' && i != 0) 17 { 18 for (int j = i + 1; j < end; j++) 19 { 20 cout << str[j]; 21 } 22 cout << ' '; 23 end = i; 24 } 25 if (i == 0) 26 { 27 for (int j = i; j < end; j++) 28 { 29 cout << str[j]; 30 } 31 } 32 } 33 34 return 0; 35 }
输出例子:
boy a am I