C语言之逆序

1.原地逆序

char *reverse(char *s)
{

 char *p=s;//指向头
 char *q=s;//指向尾
 char t;
 while(*q)
    ++q;
 q--;
 if(p<q)
 {
  t=*p;
	*p++=*q;
	*q--=t;
 }
 return s;
}

2.递归逆序

void reverse(char *s,int left,int right)
{

 char t;
 
 if(left>right)
	 return;
 if(left<right)
 {
  t=s[left]
  s[left]=s[right];
	s[right]=t;	 
 }

 reverse(s,left++,right--)

}

猜你喜欢

转载自blog.csdn.net/dop102/article/details/79729983