递归斐波那契数列:
#include<stdio.h>
//#include<iostream.h>
#include <math.h>
//递归斐波那契数列
int Fibon(int n) //递归函数
{
if (n == 1|| n == 2)
return 1;
else
return Fibon(n-1) + Fibon(n-2);
}
int main()
{
int n,m=0;
printf("请输入一个整数:");
scanf("%d",&n);
for (int i = 1; i <= n; i++)
{
m = Fibon(i);
printf("%d ",m);
}
printf("\n第%d项斐波那契数列的值为:%d",n,m);
return 0;
}
非递归斐波那契数列:
#include <stdio.h>
int main(){
//非递归斐波那契数列
int n = 0;
printf("请输入一个整数:");
scanf("%d", &n);
if(n<=0){
printf("输入错误");
}else if(n == 1 || n ==2){
printf("第%d项斐波那契数列为1",n);
}else{
int i,j,k;
i=1;
j=1;
for(int m=3;m<=n;m++){
k= i + j;
// printf("%d\n",k);
i = j;
j = k;
}
printf("第%d项斐波那契数列的值为:%d",n,k);
}
}
阶乘
#include <stdio.h>
int main(){
//递归阶乘
int x,y;
int n=1;
printf("请输入一个整数:");
scanf("%d", &x);
if(x<0){
printf("输入错误");
}else{
for(y=x;y>=1;y--){
n = n * y;
}
printf("%d的阶乘为%d",x,n);
}
return 0;
}