[递归迭代]Fibonacci数列递归法和迭代法
的模块化测试
篇一:F ib onacc i数列递归法和迭代法的模块化测试
[递归法]F ib onacc i数列递归法和迭代法的模块化测试——简介
本文介绍F ib onacc i数列用递归法和迭代法区别重点在于本文把递归法进行了优化用二叉树三叉树尾归法分别来设计递归算法并和迭代法进行比较而且这个代码把这些功能做了模块化方便使用。
二叉树递归算法函数名Fib_rec 1.
三叉树递归算法函数名Fib_rec2.
尾归法递归算法函数名Fib_rec 3.
递迭代法算法函数名F ib_ite.
[递归法]F ib onacc i数列递归法和迭代法的模块化测试——知识点vs或者vc++[递归法]Fib onacc i数列递归法和迭代法的模块化测试——详细知识
[递归法]F ib onacc i数列递归法和迭代法的模块化测试一
程序主界面
模块一为二叉树递归算法和迭代法比较
模块二为三叉树递归算法和迭代法比较
模块三为尾归法递归算法和迭代法比较
数字4退出
[递归法]F ib onacc i数列递归法和迭代法的模块化测试二
主界面错误输入测试
[递归法]F ib onacc i数列递归法和迭代法的模块化测试三
次级模块界面输入fiboncci位数开始测试
[递归法]F ib onacc i数列递归法和迭代法的模块化测试四
定义了越界值非法输入时报错
[递归法]F ib onacc i数列递归法和迭代法的模块化测试五
程序可在次级界面选择继续输入数字测试或者返回主界面或者退出
[递归法]F ib onacc i数列递归法和迭代法的模块化测试六
代码如下
#inc lud e//预处理头文件
#inc lud e
#inc lud e
//函数声明后面介绍函数功能void InitMenu;void Select;void SubSelect;long Fib_ite;long Fib_rec 1;long Fib_rec2;long Fib_rec3;void Fib1;void Fib2;void Fib3;int Trans from;
//主函数int main
{
Init Me nu;return 0;
}
//初始化主界面函数void InitMenu
{p rintf;p rintf;p rintf;p rintf;p rintf;p rintf;p rintf;
Select;
}
//主界面选择函数void Select
{intn;scanf_s;//数字录入if //判断字符正确性
{fflus h; //对输入字母时产生的buffer越界进行清理在输入错误时进行printf; //输出错误信息
Init Me nu; //输入错误时继续返回初始化函数输入
}s witc h //对录入数字进行选择
{case 1:system; //先清屏函数再选择1进入递归优化一方案printf;printf;printf;printf;
Fib1;b re ak;case 2:system; //选择2进入递归优化二方案printf;printf;printf;printf;
Fib2;b re ak;case3://选择3进入递归优化三方案s ys tem;printf;printf;printf;
p rintf;
Fib3;break;case4:exit; //选择4退出。b re ak;d e fault:printf; //当输入出错时输出错误信息Select; //选择出错时重新选择b re ak;
}
}void Fib1 //优化一函数
{intm;clock_t us1,us2;char a[5];scanf_s;//输入数字进行计算getc har; //接收sc anf留下的回车if
{
p rintf;
Fib1;
}new1:us 1=clock;p rintf);us2=clock;p rintf;us 1=clock;p rintf);us2=clock;p rintf;p rintf;p rintf;p rintf;p rintf;p rintf;p rintf;gets_s; //继续接收字符串m=Trans fro m; //把处理字符函数处理字符的结果给goto new1; //跳转到排位置
}
void Fib2//类似优化一{intm;clock_t us1,us2;char a[5];scanf_s;getc har;
{printf;
Fib2;
}new2:us 1=clock;printf);us2=clock;printf;us 1=clock;printf);us2=clock;printf;printf;printf;printf;
p rintf;p rintf;p rintf;gets_s;m=Trans fro m;go to new2;
}void Fib3//类似优化一{intm;clock_t us1,us2;char a[5];scanf_s;getc har;
{printf;
Fib3;
}new3:us 1=c lo c k;printf);us2=clock;
提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...
BuyVM在昨天宣布上线了第四个数据中心产品:迈阿密,基于KVM架构的VPS主机,采用AMD Ryzen 3900X CPU,DDR4内存,NVMe硬盘,1Gbps带宽,不限制流量方式,最低$2/月起,支持Linux或者Windows操作系统。这是一家成立于2010年的国外主机商,提供基于KVM架构的VPS产品,数据中心除了新上的迈阿密外还包括美国拉斯维加斯、新泽西和卢森堡等,主机均为1Gbps带...
Contabo自4月份在新加坡增设数据中心以后,这才短短的过去不到3个月,现在同时新增了美国纽约和西雅图数据中心。可见Contabo加速了全球布局,目前可选的数据中心包括:德国本土、美国东部(纽约)、美国西部(西雅图)、美国中部(圣路易斯)和亚洲的新加坡数据中心。为了庆祝美国独立日和新增数据中心,自7月4日开始,购买美国地区的VPS、VDS和独立服务器均免设置费。Contabo是德国的老牌服务商,...