解题思路:
先观察序列发现:第1项分数为2/1,第2项分数的分子为前一项的分子分母和,分母为前1项的分子,第3项和第2项也是如此关系,此后项以此类推……
,所以定义数组i,根据索引来取值运算
索引(index) | 0 | 1 | 2 | 3 | …… | p |
值(value) | 1 | 2 | 3 | 5 | …… | i[p-1]+i[p-2] |
注意事项:
1、需要提前根据题目设置好数组的初始值
int i[1000] = {1,2} /1000是随便定义的数组大小,也可以在最前面直接 #define max 1000,此处的1000就可以写为max
2、要保留2位小数,所以在数组进行运算的时候要把结果转化成float
m=(float)i[p]/i[p-1];
参考代码:
#include <stdio.h> int main() { int i[1000]={1,2}; int n; float m,s; scanf("%d",&n); for (int p=1;p<=n;p++) { i[p+1]=i[p]+i[p-1]; m=(float)i[p]/i[p-1]; s+=m; } printf("%0.2f",s); return 0; }
0.0分
2 人评分
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:886 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:619 |
WU-输入输出格式练习 (C++代码)浏览:1082 |
C语言程序设计教程(第三版)课后习题9.10 (C语言代码)浏览:835 |
蚂蚁感冒 (C语言代码)浏览:1334 |
DNA (C语言代码)浏览:750 |
GC的苦恼 (C语言代码)浏览:621 |
时间转换 (C语言代码)浏览:628 |
复数求和 (C语言代码)浏览:928 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:560 |