作业帮 > 综合 > 作业

c语言编程,计算并输出下列级数的前n项之和Sn Sn=2/1+3/2+5/3+8/5+13/8+21/13.

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/05/02 12:21:42
c语言编程,计算并输出下列级数的前n项之和Sn Sn=2/1+3/2+5/3+8/5+13/8+21/13.
我自己的写法 不知道这样写哪里错了 给的答案看不懂
#include "stdio.h"
void main()
{
float t,a,b,c;
c=0;
a=2;
b=1;
while(t>2){
c=c+t;
a=b+1;
b=a-1;
t=a/b;}
printf("%f\n",t);
}
c语言编程,计算并输出下列级数的前n项之和Sn Sn=2/1+3/2+5/3+8/5+13/8+21/13.
1、首先你得确定计算多少个项,也就是规定n=多少,如果计算无穷多个项,那么你的程序是停不下来的,也自然不会输出你想要的结果.
2、你没看懂Sn=……公式的规律.你的程序里a应该是每项的分子,b是分母,c是前n项和,t是a/b,那么a和b的通式是:an=an-1+an-2(n>2,第n项=n的前两项之和,b同a)
3、你的C语言基础不到位,不知道怎么写程序.
综上,建议你看书学习C语言基础,不要按照自己的想法写程序,读懂书上正确的程序才能解决你现在的问题.
再问: 就是在自学C 然后这是循环语句后面的题目
再答: 这是程序,你看看,不懂再问我。 #include void main() { float a[100]={1,2}; //每一项的分子是下一项的分母,所以分子、分母可以看成是一个数列。a数组存放这个数列的每个值,前两项是1和2 int i,n; float s=0; printf("请输入n="); scanf("%d",&n); for(i=2;i