程序:
-
#include<stdio.h>
-
-
void reverse(char *p)
-
{
-
if( *p =='\0' )
-
return;
-
reverse( p+1 );
-
printf( "%c", *p );
-
}
-
-
int main()
-
{
-
reverse("abc");//cba
-
-
printf("\n");
-
return 0;
结果:
cba
分析:
该程序定义了一个递归函数(函数直接或间接的调用函数本身)
在reverse()函数中,参数是从右到左传入压入栈,所以先压的是 c ,接着reverse
( p
+1
);使指针指向下一个,输出刚压的参数
阅读(779) | 评论(0) | 转发(0) |