程序的功能是输出“斐波那契数列”第n项的值。
斐波那契数列又称黄金分割数列:0, 1, 1, 2, 3, 5, 8, 13,
21, 34, 55, 89, 144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368……
即这个数列从第三项开始,每一项都等于前两项之和。
编程过程:
1 定义变量,项数n, 第n项f3, 循环变量i, 第n-1项f2 和 第n-2项f1
2 提示用户输入项数的语句
3 由于前三项的数字特殊,用到判断语句
4 最后一个else里面放入for循环
5 从第4项的数开始,f3= f1+f2, 所以用i=3循环
#include <stdio.h>
int main(void)
{
int n; //斐波那契数列的项数
int f3; //第n项的值
int i; //循环变量
int f1, f2; //分别为第n-2项和第n-1项
f1 = 1; //初值为第2项的值
f2 = 1; //初值为第3项的值
printf("请输入您想要求的项数:");
scanf("%d", &n);
if(n == 1)
{
f3 = 0;
}
else if((n==2) || (n==3))
{
f3 = 1;
}
else
{
for(i=3; i<n; i++)
{
f3 = f1+f2;
f1 = f2;
f2 = f3;
}
}
printf("%d\n", f3);
return 0;
}