打印Fibonacci数列方法汇总(前20项,每行5个)
NO.1
迭代法
标签:通俗、易懂
思路:先打印第一项、再在循环里面执行fib=fib1+fib2,把fib2赋给fib1,把fib赋给fib2,每行5个可使用if函数(循环次数对5取余)。
1 #include <stdio.h> 2 main() 3 { 4 long fib1=0,fib2=1,fib=1; 5 int i; 6 printf("%ld\t",fib); 7 for(i=2;i<=20;i++) 8 { 9 fib=fib1+fib2; 10 printf("%ld\t",fib); 11 fib1=fib2; 12 fib2=fib; 13 if(i%5==0) 14 printf("\n"); 15 } 16 getch(); 17 }
NO.2
加减法
标签:代码少,不易理解
思路:
i | n | fib |
1 | 1 | 1 |
2 | 3 | 1 |
3 | 5 | 3 |
4 | 8 | 5 |
每次得出下一个数,再通过赋值赋给fib
1 #include<stdio.h> 2 main() 3 { 4 int fib=0,n=1,i; 5 for(i=1;i<=20;i++) 6 { 7 n+=fib; 8 fib=n-fib; 9 printf("%d\t",fib); 10 if(i%5==0) 11 printf("\n"); 12 } 13 getch(); 14 }
NO.3
数组法
标签:代码少,最易理解
思路:先打印前两项,后一项等于前两项之和。
1 #include<stdio.h> 2 main() 3 { 4 long fib[21]; 5 int i; 6 fib[1]=1; 7 fib[2]=1; 8 printf("%5ld\t%5ld\t",fib[1],fib[2]); 9 for(i=3;i<=20;i++) 10 {fib[i]=fib[i-1]+fib[i-2]; 11 printf("%5ld\t",fib[i]); 12 if(i%5==0) 13 printf("\n"); 14 } 15 getch(); 16 }
拓展,动态数组法
NO.1动态数组设置方法
1 #include <stdio.h> 2 #include <stdlib.h> 3 main() 4 { 5 int num,*p=0,i; 6 printf("输入数组元素个数:"); 7 scanf("%d",&num); 8 p=(int*)malloc(sizeof(int)*num); 9 for(i=0;i<num;i++) 10 { 11 scanf("%d",&p[i]); 12 } 13 for(i=0;i<num;i++) 14 { 15 printf("%d\n",p[i]); 16 } 17 }
NO.2
动态数组法的Fibonacci数列
1 #include <stdio.h> 2 #include <stdlib.h> 3 main() 4 { 5 int num,*fib=0,i; 6 printf("输入要显示元素个数:"); 7 scanf("%d",&num); 8 fib=(int*)malloc(sizeof(int)*num); 9 fib[1]=1; 10 fib[2]=1; 11 printf("%8ld\t%8ld\t",fib[1],fib[2]); 12 for(i=3;i<=num;i++) 13 {fib[i]=fib[i-1]+fib[i-2]; 14 printf("%8ld\t",fib[i]); 15 if(i%5==0) 16 printf("\n"); 17 } 18 getch(); 19 }
相关截图
转载于:https://www.cnblogs.com/wangyishan/p/6734588.html
打印Fibonacci数列方法汇总(前20项,每行5个)相关推荐
- 以每行5个数输出fib前20 c语言循环,打印Fibonacci数列方法汇总(前20项,每行5个)...
NO.1 迭代法 标签:通俗.易懂 思路:先打印第一项.再在循环里面执行fib=fib1+fib2,把fib2赋给fib1,把fib赋给fib2,每行5个可使用if函数(循环次数对5取余). #inc ...
- python求斐波那契数列前20项和、每隔5个数空一行_输出斐波那契数列的前20项(每行5个数)_学小易找答案...
[单选题]The Third State Bank of Laramie has opened an office in Morocco. This office does not take depo ...
- python输出斐波那契数列前20项、每输出5个数换行_按要求编写程序:输出斐波那契数列的前20项,每行输出5项....
用循环语句编写一程序,要求输出下列图形 static void Main(string[] args) {  用C语言编写程序:键盘输入a和b两个整数,要求用函数求两个数 ...
- c语言斐波那契数列前20项每行5个数,求c++:源程序。前20项斐波那契数列 ,要求输出的时候每行输出五个...
解答过程如图所示: 工作原理:C++语言的程序因为要体现高性能,所以都是编译型的.但其开发环境,为了方便测试,将调试环境做成解释型的.即开发过程中,以解释型的逐条语句执行方式来进行调试,以编译型的脱离 ...
- 编写一个C++风格的程序,用动态分配空间的方法计算Fibonacci数列的前20项并存储到动态分配的空间中
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 题目: 编写一个C++风格的程序,用动态分配空间的方法计算Fibonacci数列的前20项并存储到动态分配的空间中. 代码: #inc ...
- Java代码实现用for循环打印斐波那契数列前20项
/*** 需求:编写代码按照要求实现以下的功能 * 用for循环打印 1 1 2 3 5 8 13 ...(斐波那契数列前20项)* 要点提取:斐波那契数列规律:第三个数起,是前两个数之和* 思路分析 ...
- 求Fibonacci数列的前20项
<程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p112 习题4 2.编程求Fibonacci数列的前20项. Fibonacci数列的定义:F0=0, ...
- 求 Fibonacci 数列的前 20 项
求 Fibonacci 数列的前 20 项 #include <iostream>using namespace std;int main() {int f[20] = {1,1}; // ...
- 7-7 斐波那契(Fibonacci)数列前20项 (10 分)
7-7 斐波那契(Fibonacci)数列前20项 (10 分) 输出斐波那契(Fibonacci)数列(1,1,2,3,5,8,13--)的前20项 链接 输出格式: 每个数输出占8列. 输出样例: ...
最新文章
- 找不到第三方怎么理赔_车子被撞,找不到肇事者怎么办?
- 番茄工作法:番茄时间管理方法与番茄工作法软件图解提高工作效率
- mysql数据库字符集设置
- web页面密码修改测试
- 合并两个有序数组python_Python3合并两个有序数组代码实例
- linux——数据库mariadb的基础操作
- android开发蓝牙是否可见开关_如何从后台开启android蓝牙的可见性以及始终保持可见性...
- 谷歌、微软、亚马逊6个惊人的A/B测试实例
- 依赖倒置原则_面向对象的设计原则你不要了解一下么?
- 前端demo - 点名器
- c语言无法定位程序输入点,【求助】无法定位程序输入点PacketGetVersion于动态链接库Packet.dll上...
- 美团圈圈是什么?美团圈圈介绍,美团圈圈是什么平台?
- 茶颜悦色的“雷”早已埋下
- 少儿编程 | 探讨C++课程、MIT Scratch课程、python课程、Noi竞赛、蓝桥怎么引导?如何才能让小孩子飞的更高?附开发工具的下载与安装
- uva12325 暴力枚举
- 推荐一位 10w+ 粉丝的 Python 工程师
- Linux 服务器环境搭建及配置
- Windows2003和SP2补丁集成+GHOST安装系统
- 曦力DVD备份及转换软件 Xilisoft DVD Ripper Ultimate 6绿色版
- 运营商线路细分_国际电信运营商电信市场细分的比较分析
热门文章
- php脚本搭vps,#分享#基于宝塔面板的ZFaka(发卡程序)一键脚本
- Mysql查询为空赋值为0
- 使用Builder模式创建复杂可选参数对象
- pandas系列 read_csv 与 to_csv 方法各参数详解(全,中文版)
- 关于Java浮点数运算精度丢失问题
- DBCC DBREINDEX重建索引提高SQL Server性能
- Openstack Swift 原理、架构与 API 介绍
- Java设计模式—工厂方法模式抽象工厂模式
- varnish 4.0 官方文档翻译14-Built in subroutines
- 数据结构-栈(先进后出表)