#include <iostream>
using namespace std;
void RevStr(char *src)
{
char *start = src, *end = src, *ptr = src;
while (*ptr++ != '\0') //遍历字符串
{
if(*ptr == ' ' || *ptr == '\0') //找到单独的一个单词
{
end = ptr - 1;
while(start < end)
swap(*start++, *end--); //单词字母逆序
start = end = ptr+1;
}
} //这个循环是把单词都反过来,变为 I ma morf iahgnahS
start = src, end = ptr - 2;
while(start < end)
{
swap(*start++,*end--);
} //这个循环是把上面的 I ma morf iahgnahS 逆序
}
int main()
{
char src[] = "I am from Shanghai";
cout << src << "\n";
RevStr(src);
cout << src << "\n";
return 0;
}
将I am from Shanghai变为 Shanghai from am I
最新推荐文章于 2018-10-13 10:54:39 发布