有一个字符数组的内容为:"student a am i",请你将数组的内容改为"i am a student".
要求:
不能使用库函数。只能开辟有限个空间(空间个数和字符串的长度无关)。

#include<stdio.h>
#include<assert.h>

int my_len(char *str)
{   
	
    int count=0;
	assert(str);
	while(*str)
	{
	   count++;
	   str++;
	}
	return count;
}

void  reverse(char *start,char *end)
{
   while(start<end)
   {
      char tmp=*start;
	  *start=*end;
	  *end=tmp;
	  start++;
	  end--;
   }
}
void rev(char *s)
{
  int len=my_len(s);
  char *start=s;
  char *end=s+len-1;
  reverse(start,end);
  while(*s)
  {
     start=s;
	 while((*s!=' ')&&(*s!='\0'))
	 {
	   s++;
	 }
	 end=s-1;
	 reverse(start,end);
	 if(*s == ' ')
      s++;
  }
  
}
int main()
{
	char s[]="student a am i";
	rev(s);
	printf("%s\n",s);
	system("pause");
   return 0;
}