① 求用c语言表达斐波那契数列
#include <stdio.h>
main( ){
long f1,f2,f;
int i,n;
scanf("%d",&n);
f1=f2=1;
if(n<=2)
f=1;
else
for(i=3;i<=n;i++){
f=f1+f2;
f1=f2;
f2=f;
}
printf("%ld
",f);
}
② C语言:编写函数,根据整数参数n,求Fibonacci数列第n项的值。
/*斐波那契数列,前两项之和等于第3项*/
#include "stdio.h"
int fun(int n)
{
int a=1,b=1;
int r=0;
if(n==1||n==2)
return 1;
for(int i=2;i<=n;i++)
{
r=a+b;
if(i%2==0)
a=r;
else
b=r;
}
return r;
}
main()
{ int k,i;
scanf("%d",&k);
for(i=1;i<=k;i++)
printf("%10d",fun(i));
printf(" ");
}
③ 用c语言计算fibonacci数列的前50项和
#include"stdio.h"
intmain(){
longintf1,f2,i;
f1=1;f2=1;//赋初始值
for(i=1;i<=20;i++){//循环20次,一次两个,结果为前50项
printf("%12d%12d",f1,f2);//输出两项
f1=f1+f2;f2=f2+f1;//计算下面两项
if(i%2==0)//一行四个好看用
printf(" ");
}
return0;
}
(3)c语言求fibonacci数列扩展阅读
C语言程序Fibonacci数列计算兔子:
#include<stdio.h>
#defineYEAR12
intmain()
{
intf[YEAR+1]={0,1,2};//1月和2月兔子对数分别初始化为1,2,不使用f[0]
intmonth;
for(month=3;month<=YEAR;month++)//从3月份开始计算每个月总兔数
{
f[month]=f[month-1]+f[month-2];
}
for(month=1;month<=YEAR;month++)//输出12个月的总兔对数
{
printf("%d ",f[month]);
}
printf(" sum=%d ",f[YEAR]);//输出年末的兔子总数
return0;
}
④ C语言 计算fibonacci数列
C语言程序代码如下:
#include <stdio.h>
main()
{
long int f1,f2;
int i;
f1=1;
f2=1;
for (i=1;i<=9;i++)
{
printf("%ld %ld ",f1,f2);
if (i%3==0) printf("
");
f1=f1+f2;
f2=f2+f1;
}
return 0;
}
if语句是使输出6个数后换行。因为i是循环变量,当i为偶数时换行,因此i每隔2换一次行相当于每输出6个数后换行。
输出结果如下
⑤ 如何使用C语言输出Fibonacci数列
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i = 0;
int limit = 10; // 输出前10个fibonacci数
int pre1 = 1; // 当前计算值前面第二个fibonacci数
int pre2 = 1; // 当前计算值前面一个fibonacci数
int res; // 当前计算值
for (i; i < limit; i++)
{
if (i == 0 || i == 1)
{
// 前两个fibonacci数是1
printf("1 ");
}
else
{
res = pre1 + pre2;
printf("%d ", res);
pre1 = pre2;
pre2 = res;
}
}
return 0;
}
⑥ C语言编程:用函数递归法求Fibonacci数列的前n项·
#include <stdio.h>
long int F(int n)
{
if (n==1||!n) {
return n;
}
else return F(n-1)+F(n-2);
}
int main(void)
{
int i,n;
printf("n=");
scanf("%d",&n);
for (i=0; i<n; i++) {
printf("%-10ld",F(i));
}
return 0;
}
在数理逻辑和计算机科学中
递归函数或μ-递归函数是一类从自然数到自然数的函数,它是在某种直觉意义上是"可计算的" 。事实上,在可计算性理论中证明了递归函数精确的是图灵机的可计算函数。递归函数有关于原始递归函数,并且它们的归纳定义(见下)建造在原始递归函数之上。但是,不是所有递归函数都是原始递归函数 — 最着名的这种函数是阿克曼函数。
以上内容参考:网络-递归函数
⑦ c语言 fibonacci数列
#include<stdio.h>
int f(int n)
{
if (n==1|| n==2)
{
return (1);
}
else
{
return (f(n-1)+f(n-2));
}
}
void main()
{
int n,i;
printf("input n\n");
scanf("%d",&n);
for(i=1;i<=n;i++)
printf("%d\n",f(i));
}
⑧ c语言中,怎样求Fibonacci数列以及从写入了Fibonacci数列的文件中提取出所需位数的数
要求能输出前200位的数,必须使用大数加法。下面是一个例子:
#include<stdio.h>
#include<iostream>
using namespace std;
int a[201][101]={0};
int b[201][101]={0};
int c[201][101]={0};
int n;
int main()
{
int i,j,k;
scanf("%d",&n);
for(k=1;k<=n;k++)
{
if(k<3)
{printf("%d\n",k);
}
else
{
c[k][1]=2;
b[k][1]=1;
for(i=1;i<=k-2;i++)
{for(j=1;j<=100;j++)
{a[k][j]=b[k][j];
b[k][j]=c[k][j];
c[k][j]=0;}
for(j=1;j<=100;j++)
{c[k][j]=c[k][j]+a[k][j]+b[k][j];
if(c[k][j]>=10)
{c[k][j]=c[k][j]-10;
c[k][j+1]=1;}
}
}
i=100;
while(c[k][i]==0) i--;
for(i=i;i>=1;i--)
printf("%d",c[k][i]);
printf("\n");
}
}
system("pause");
return 0;
}
⑨ C语言编程:用函数递归法求Fibonacci数列的前n项·
#include
<stdio.h>
#define
COL
10
//一行输出10个
long
scan()
{
//输入求fibonacci函数的第N项
int
n;
printf("Input
the
N
=
");
scanf("%d",&n);
return
n;
}
long
fibonacci(int
n)
{
//fibonacci函数的递归函数
if
(0==n||1==n)
{
//fibonacci函数递归的出口
return
1;
}
else
{
return
fibonacci(n-1)+fibonacci(n-2);
//反复递归自身函数直到碰到出口处再返回就能计算出第n项的值
}
}
int
main(void)
{
int
i,n;
n
=
scan();
printf("Fibonacci数列的前%d项\n",
n);
for
(i=0;
i<n;)
//输出fibonacci函数前n项每项的值
{
printf("%-10ld",fibonacci(i++));
//调用递归函数并且打印出返回值
if(i%COL==0)
{
//若对COL取余等于0就换行,也就是控制每行输出多少个,
//而COL=10就是每行输出10个
printf("\n");
}
}
printf("\n");
return
0;
}
⑩ C语言如何用数组求Fibonacci数列的前N项和
#include<stdio.h>
int main()
{
int i,f[21]={1,1};//对最前面两个元素f[0]和f[1]赋初值1
for(i=2;i<21;i++)
{
f<i>=f[i-2]+f[i-1];//先后求出f[2]~f[20]的值
}
for(i=0;i<21;i++)
{
if(i%5==0)//控制每输出5个数后换行
{
printf(" ");
}
printf("%d ",f<i>);//输出一个数
}
printf(" ");
return 0;
}
(10)c语言求fibonacci数列扩展阅读:
printf()函数的调用格式为:printf("<格式化字符串>",<参量表>)。
其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。
参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。
比如:
int a=1234;
printf("a=%d ",a);
输出结果为a=1234。
scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include<stdio.h>。
int scanf(const char*restrict format,...);
函数scanf()是从标准输入流stdin(标准输入设备,一般指向键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。
如:
scanf("%d%d",&a,&b);
函数返回值为int型,如果a和b都被成功读入,那么scanf的返回值就是2。