本题的一个重点就是递归和递归时如何控制何时结束
我这里直接简单的用了一个temp来判断递归的次数,这样就可以同时判断结束时间
#include <stdio.h>
int temp=0;
char* asd(char a[],int n,int temp) //递归函数
{
if(n/2==temp) //判断是否全部逆置
{
return 0;
}
char c=a[temp];
a[temp]=a[n-temp-1];
a[n-temp-1]=c;
temp++;
printf("%s\n",a);
asd(a,n,temp);
}
int main()
{
int n=0;
scanf("%d",&n);
char b[n];
scanf("%s",b);
asd(b,n,temp);
printf("\n%s",b);
}