标点符号和普通字母一样处理。如:I am a student.翻转成 student. a am I
void reverse(char *pbegin,char *pend)
{
while(pbegin<pend){
char tmp=*pbegin;
*pbegin=*pend;
*pend=tmp;
++pend;
++pbegin;
}
}
char* ReverserSentence(char *str)
{
if(!str)
return ;
reverse(str,str+strlen(str)-1);
char *begin,*end;
begin=end=str;
while(*begin!='\0'){
if(*begin==' '){
++begin;
++end;
}
else if(*end==' '|| *end=='\0'){
reverse(begin,--end)
begin=++end;
}else{
++end;
}
}
return str;
}