例:输入 “I Love you”,输出“you Love I”;在不使用库函数,不使用sizeof()的情况下:

#include<stdio.h>#include<stdlib.h>voidreverse_str(char*p,intlen)//定义一个反转函数{char*left=p;char*right=p+len-1;while(left<right){chartmp=*left;*left=*right;*right=tmp;left++;right--;}}char*reverse(char*p)//将这个字符串中的单词先反转,再将整体反转{intn=0;char*arr=p;intcount=0;char*p2=arr;while(*arr)//单词反转{n++;if(*arr==''){reverse_str(p2,count);//传递单词的首地址和长度count=-1;p2=arr+1;}count++;arr++;}reverse_str(p2,count);reverse_str(p,n);//字符串反转returnp;}intmain(){chararr[81];gets(arr);char*ret=reverse(arr);printf("%s\n",ret);system("pause");return0;}

当然这只是一种方法。