- 函数自身调用自身,必须有结束条件退出循环
- 案例
- 实现字符串逆序遍历
//1、实现字符串逆序遍历
void reversePrint(char * p)
{
if (*p == '\0')
{
return; //退出条件
}
reversePrint(p + 1);
printf("%c ", *p);
}
void test01()
{
char * str = "abcdef";
reversePrint(str);
}
//2、实现字符串正序遍历
void PositivePrint(char * p)
{
if (*p == '\0')
{
return; //退出条件
}
printf("%c ", *p);
reversePrint(p + 1);
}
- 实现斐波那契数列
//2、斐波那契数列 1 1 2 3 5 8 13 21 34 55
int fibonacci(int pos)
{
if (pos == 1 || pos == 2)
{
return 1;
}
return fibonacci(pos - 1) + fibonacci(pos - 2);
}
void test02()
{
int ret = fibonacci(10);
printf("%d\n", ret);
}