注册 登录
编程论坛 C++教室

改错。。已知一个数列从第0项开始的前三项分别为0、0、1,以后的各项都是其相邻的前三项之和。计算并输出该数列前n项的平方根之和sum。

zhoujin1994 发布于 2013-04-25 09:13, 10373 次点击
#include<stdio.h>
#include<math.h>
void main()
{  int n,k;
   double sum,s0,s1,s2,s;
   scanf("%d",&n);
   sum=1.0;
/********found********/
   if(n<=2)
     sum=0;
 s0=0.0;
 s1=0.0;
 s2=1.0;
/********found********/
 for(k=3;k<=n;k++)
    {s=s0+s1+s2;
    sum+=sqrt(s);
    s2=s; s1=s2; s0=s1;
  }
/********found********/
 printf("%lf\n",sum);
}
4 回复
#2
wp2319572013-04-25 09:50
第一  本题0分
第二  貌似是F什么数列的扩展  估计和阶乘差不多 数值会越来越大
第三  你的代码不是c++  而是c
#3
qunxingw2013-04-25 10:05
s要定义为数组与循环关联起来
#4
邓士林2013-04-25 11:47
s2=s; s1=s2; s0=s1;
这个赋值的顺序不对吧!还有楼上的s为什么要与数组关联,这个是二级c语言试题,不能修改变量的声明条件的
#5
zhoujin19942013-04-25 15:51
谢谢楼上的各位了,意思我估计清楚了,谢谢
1