Problem C: 求斐波那契数列的前n项值

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/david2000999/article/details/102629938

Problem C: 求斐波那契数列的前n项值

分析

注意求和前后项的关系,随意本题采用的是代替赋值的方式,实现前后递增求和的效果。

Description

输入n,求斐波那契数列前n项的值。斐波那契数列规律如下:1, 1, 2, 3, 5, 8, 13,21, 34,55…,从第三项开始,每一项都是前面两项的和。

Input

输入正整数n。

Output

输出斐波那契数列的前n项值

Sample Input

1
3
5
8

Sample Output

1
1 1 2
1 1 2 3 5
1 1 2 3 5 8 13 21

#include<stdio.h>
int main()
{
   int n,a,b,c,i;
   while(scanf("%d",&n)!=EOF) 
    {
    	a=1;b=1;
		if(n==1)
    	printf("1\n");
    	if(n==2)
    	printf("1 1\n");
    	if(n>=3)
    	printf("%d %d ",a,b);
 	    for(i=3;i<=n;i++)
 	   {
   	 	
   	    c=a+b;
 	    printf("%d ",c);
 	    a=b;b=c;
 	   }
    }	
    
    return 0;
}

总结

1、特殊值单独处理。
2、一定注意前后项关系。
3、求和用循环。
4、注意输出格式,如空格,逗号等。

猜你喜欢

转载自blog.csdn.net/david2000999/article/details/102629938