- 递归函数:在函数的内部,再次调用自己
- 缺点:重复计算,调用栈溢出
- 字符类型char
- 汉诺塔:递归函数模型
#include<stdio.h>
int f(int n){
int sum=0;
for(int i=1;i<=n;i++){
sum+=i;
}
return sum;
}
int main(){
printf("Enter a number: ");
int a;
scanf("%d",&a);
printf("%d\n",f(a));
return 0;
}
#include<stdio.h>
int f(int n){
if(n==1)
return 1;
else
return n+f(n-1);
}
int main(){
printf("Enter a number: ");
int a;
scanf("%d",&a);
printf("%d\n",f(a));
return 0;
}
#include <stdio.h>
void f(int n)
{
if (n == 0)
{
return;
}
else
{
f(n / 10);
printf("%d\n", n % 10);
}
}
int main()
{
printf("输入一个整数:");
int n;
scanf("%d", &n);
f(n);
return 0;
}
#include <stdio.h>
void f(int n, char A, char B, char C)
{
if (n == 1)
{
printf("%c--->%c\n", A, C);
}
else
{
f(n - 1, A, C, B);
printf("%c--->%c\n", A, C);
f(n - 1, B, A, C);
}
}
int main()
{
int n = 3;
char A, B, C;
f(n, ' A', ' B', ' C');
}