#include <stdio.h>
#include <string.h>
int reserve(char a[],int n)
{
int i=0,j=0;
char temp = 0;
int m = n-1;
for(i=0;i<m;i++)
{
n--;
for(j=0;j<n;j++)
{
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
int re_reserve(char *a)
{
int n = 0;
while(1)
{
n++;
if((*a)==' '||(*a)=='\0')
{
reserve(a-n+1,n-1);
n = 0;
}
if(*a=='\0')
{
break;
}
a++;
}
}
int main()
{
char a[]="I am from shanghai";
int n = strlen(a);
reserve(a,n);
re_reserve(a);
printf("output:%s\n",a);
return 0;
}