解题思路:
分别观察分子与分母的数字
分子:2 3 5 8 13 21...
分母:1 2 3 5 8 13...
可得知分子,分母遵循前两项和等于第三项的规律,分别为两组斐波那契数组
通常情况下,得知前两项可通过递推公式求出整个数组,因此需对前两项进行初始化
将分子,分母的求解纳入同一个循环,便于二者数据一一对应方便求商,也可以简洁代码
最后结果形式为多位小数,选用double作为商的数据类型
对于控制小数位数,可以使用iomanip库中的setprecision函数
注意事项:
[1].斐波那契数列必须对前两项进行初始化
[2].分子和分母个数相同,变化规则相同,这里纳入同一个循环中遍历
[3].设置小数位数,格式如下所示
参考代码:
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int N;
double a[5000]={2.00,3.00};
double b[5000]={1.00,2.00};--------------------[1]
double c=0.00;
cin>>N;
for(int n=0;n<N;n++)------------------------------[2]
{
a[n+2]=a[n]+a[n+1];
b[n+2]=b[n]+b[n+1];
cout<<a[n]/b[n]<<endl;
c=c+a[n]/b[n];
}
cout<<fixed<<setprecision(2)<<c<<endl;---[3]
return 0;
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复