递归函数

来源:互联网 发布:c语言打印数字图形 编辑:程序博客网 时间:2024/06/16 06:17

递归函数就是直接或间接调用自身的函数

1.一个简单的递归函数与其调用流程

#include<stdio.h>
#include<stdlib.h>
void recursion(int a)
{
if (a == 1)
{
printf("%d\n", a);
return;
}
else
{
recursion(a - 1);
printf("%d\n", a);
}
}
int main()
{
recursion(3);
system("pause");
return 0;
}

程序输出结果:123

函数调用流程:


2.递归函数实现字符串反转输出

void recursion(char* str)
{
if (*str == '\0')
return;
else
{
recursion(str + 1);
printf("%c", *str);
}
}
int main()
{
char buf[] = "123456789";
recursion(buf);
system("pause");
return 0;
}

输出结果:987654321

3.一个整数,从高位到低位依次打印,每次打印一位

#include<stdio.h>
#include<stdlib.h>
void recursion(int a)
{
if (a % 10 == 0)
return;
else
{
recursion(a/10);
printf("%d ", a % 10);
}
}
int main()
{
recursion(1234);
system("pause");
return 0;
}

0 0
原创粉丝点击