700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 斐波那契数列求和——C语言(小白版)

斐波那契数列求和——C语言(小白版)

时间:2018-07-06 15:35:09

相关推荐

斐波那契数列求和——C语言(小白版)

**

斐波那契数列求和——C语言(小白版)

**

题目要求

斐波那契数列 1, 1, 2, 3, 5, 8, 13, 21, 34……不难发现当n>2时,an=an-1+an-2

要求:当屏幕输入n(n>2)时,输出前n项以及前n项的和。

注意!我们不使用递归,也不用数组等等,我们就是学过前三章的小白!那如何通过C语言去解决?

编程软件

Visual Studio

编译运行:Ctrl+F5

快速注释:Ctrl+K再按:Ctrl+C

取消注释:Ctrl+K再按:Ctrl+U

开始编程

//输入n,输入前n项,以及前n项和//#include <stdio.h>int main(){int n,i,t;int sum = 0,flag = 0; //flag为换行标记int a1 = 1, a2 = 1; //前两项先列出来printf("请输入所需要的项数:");scanf("%d", &n);printf("%d %d ", a1, a2);for (i = 3; i <= n; i++)//从第三项开始{t = a1 + a2;printf("%d ", t);sum = sum + t; a1 = a2; //注意这里的写法,赋值,产生新的a1、a2a2 = t;//flag++;//if (flag % 5 == 0)//原本想每5个输出一行,但是我之前先输出了a1、a2//printf("\n"); //导致第一行有7个,并不能完成每5行输出的任务//放在这里让大家解决,感觉会麻烦一点}printf("\n\n前%d项和为:%d\n", n, sum+2); //注意这里的sum需要加上初值的2return 0;}

运行结果

请输入所需要的项数:71 1 2 3 5 8 13前7项和为:33

写在最后

1、亲自手打,输入编译器进行尝试,尝试更换不同的 n ,观察不同的结果;

2、尝试升级算法,在原有基础上改变部分代码,实现更丰富的功能;

3、欢迎留言,等后期学到了新的技能,尝试用数组、函数等方法实现。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。