反转字符串中的单词,腾讯笔试训练题
#include
#include
#include
using namespace std;
void reverseStr(char *str, int start, int end){
int len = end-start+1;
if(len <= 0) return;
char temp;
for(int i=0; i2; i++){
temp = str[start+i];
str[start+i] = str[end-i];
str[end-i] = temp;
}
}
int main()
{
char input[1024];
gets(input);
reverseStr(input,0,strlen(input)-1);
int start = 0;
int end = 0;
while(true){
while(input[end] != ' ' && input[end] != '\0') end++;
reverseStr(input,start,end-1);
if(input[end] == '\0') break;
end++;
start = end;
}
printf("%s\n",input);
return 0;
}