一.(1)递归写斐波那契数
#include<stdio.h>
#include<Windows.h>
int fib(int n)
{
if (n <= 2)
{
return 1;
}
else
{
return fib(n - 1) + fib(n - 2);
}
}
int main()
{
int n = 4;
int ret = fib(n);
printf("ret=%d\n", ret);
system("pause");
return 0;
}
(2)非递归写斐波那契数
#include<stdio.h>
#include<Windows.h>
int fib(int n)
{
int a = 1;
int b = 1;
int c = 0;
while (n > 2)
{
c = a + b;
a = b;
b = c;
n--;
}
return b;
}
int main()
{
int n = 4;
int ret = fib(n);
printf("ret=%d\n", ret);
system("pause");
return 0;
}
二、(1)用递归求n的阶乘
#include<Windows.h>
void print(int n)
{
if (n > 9)
{
print(n / 10);
}
printf("%d ", n % 10);
}
int main()
{
int num = 1234;
print(num);
system("pause");
return 0;
}