#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void my_fun(char *str)//利用指针实现整体逆置加各个单词逆置
{
int m=0;
int n=strlen(str)-1;
while(m<n)
{
char t=*(str+m);
*(str+m)=*(str+n);
*(str+n)=t;
m++;
n--;
}
int i=0;
int j=0;
while(*(str+i)!='\0')
{
while(*(str+j)!=' '&&*(str+j)!='\0')
{
j++;
}
int k=j-1;
while(i<k)
{
char p=*(str+i);
*(str+i)=*(str+k);
*(str+k)=p;
i++;
k--;
}
while(*(str+j)==' ')
{
j++;
}
i=j;
}
printf("逆置结果为:%s",str);
putchar(10);
}
int main(int argc, const char *argv[])
{
char str[20]="";
printf("please enter:");
gets(str);
my_fun(str);
return 0;
}