程序员面试宝典:一句话里的单词进行倒置
#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
void reverse( char * str ,int i,int j)
{
char tmp;
while( i < j )
{
tmp = str[i];
str[i] = str[j];
str[j] = tmp;
i++;
j--;
}
}
int main()
{
char str[]="i come from tianjin.";
int len = strlen(str);
int j;
reverse( str, 0,len-1 );
//cout<<str<<endl;
for( int k = 0; str[k] != '\0'; k++ )
{
int tmp = k;
j =0;
while( str[k] != ' ' && str[k] != '\0')
{
j++;
k++;
}
reverse(str,tmp,k-1);
if(str[k] == '\0')
{
break;
}
}
cout<<str<<endl;
system("pause");
return 0;
}

浙公网安备 33010602011771号