**

<>斐波那契数列求和——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 2015
编译运行: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、a2 a2 = t;
//flag++; //if (flag % 5 == 0) //原本想每5个输出一行,但是我之前先输出了a1、a2 // printf("\n");
//导致第一行有7个,并不能完成每5行输出的任务 //放在这里让大家解决,感觉会麻烦一点 } printf("\n\n前%d项和为:%d\n", n, sum+
2); //注意这里的sum需要加上初值的2 return 0; }
<>运行结果
请输入所需要的项数:7 1 1 2 3 5 8 13 前7项和为:33
<>写在最后

1、亲自手打,输入编译器进行尝试,尝试更换不同的 n ,观察不同的结果;
2、尝试升级算法,在原有基础上改变部分代码,实现更丰富的功能;
3、欢迎留言,等后期学到了新的技能,尝试用数组、函数等方法实现。

技术
©2019-2020 Toolsou All rights reserved,
[数据结构]八大排序算法(C语言)总结G1垃圾收集器面试题Android中使用微信H5支付时支付结果刷新问题32-jdbc工具类大学里要参加竞赛吗?都有哪些竞赛可以参加?震惊!!C++居然可以发出声音!C语言之链表入门(超详解)Java实现一个疫情人数管理系统如何用python实现斐波那契数列的前100个MyBatis循环Map(高级用法)