斐波拉契数列是1+1+2+3+5+...+n...
所以算法为前两项相加等于下一项
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
int i,a,b,c,n;
a=1;
b=1; /* 前两项已知为1,直接输出 */
printf("输入前n项(n):");
scanf("%d",&n); /* 输入需要输出到前几项 */
printf("%d\n%d\n",a,b); /* 先输出前两项 */
for(i=2;i<n;i++) /* 因为输出了前两项 所以直接从第三项开始循环输出 */
{
c=a+b; /* 前两项相加 */
printf("%d\n",c);
a=b;
b=c;
}
}
输出结果如下(比如输出前10项):