[递归迭代]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;
racknerd从成立到现在发展是相当迅速,用最低的价格霸占了大部分低端便宜vps市场,虽然VPS价格便宜,但是VPS的质量和服务一点儿都不拉跨,服务器稳定、性能给力,尤其是售后方面时间短技术解决能力强,估计这也是racknerd这个品牌能如此成功的原因吧! 官方网站:https://www.racknerd.com 多种加密数字货币、信用卡、PayPal、支付宝、银联、webmoney,可...
妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款到网站余额,超过2天...
今天中午的时候有网友联系到在选择网站域名建站和主机的时候问到域名和IP地址有没有关联,或者需要注意的问题。毕竟我们在需要建站的时候,我们需要选择网站域名和主机,而主机有虚拟主机,包括共享和独立IP,同时还有云服务器、独立服务器、站群服务器等形式。通过这篇文章,简单的梳理关于网站域名和IP之间的关系。第一、什么是域名所谓网站域名,就是我们看到的类似"www.laozuo.org",我们可以通过直接记...