给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。
输出格式:每个测试用例的输出占一行,输出倒序后的句子。
输入样例:Hello World Here I Come输出样例:
Come I Here World Hello
#include <stdio.h>
#include <string.h>
void resort(char*p ,int a,int b)
{
char temp;
while(a<b)
{
temp = p[a];
p[a] = p[b];
p[b] = temp;
a++;
b--;
}
}
int main()
{
int a=0,b=0,len,i;
char *p = new char[100] ;
gets(p);
len = strlen(p);
resort (p,0,len-1);
for (i=0; i<len; i++)
{
if (p[i-1]==' ' ||i==0)
a = i;
if (p[i+1]==' ' ||i==len-1)
{
b = i;
resort(p,a,b);
}
}
puts(p);
return 0;
}

本文介绍了一个简单的C++程序,该程序能够接收一个英文句子作为输入,并将句子中的单词顺序进行颠倒输出。适用于初学者理解字符串操作及算法实现。
451

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



