c语言 求2⼀1+3⼀2+5⼀3+8⼀5...的前二十项和

求注释 就讲解 找不到规律......
2024-11-27 10:41:45
推荐回答(5个)
回答1:

可以参考下面的代码:

#include

main()

{

int i,j,n=20;

int fz=2,fm=1;

float sum=2;

for(i=2;i<=n;i++)

{

fz=fm+fz;

fm=fz-fm;

sum+=fz*1.0/fm;

}

printf("%f",sum);

}

扩展资料:

strcpy()函数:字符串复制(拷贝)函数

strlen()函数:求字符串的长度

strcspn():求字符串互补跨度(长度)

strcmp()函数:比较两个字符串

strchr()函数:字符查找函数

ldiv()函数:求两个数的商和余数(针对long类型)

ceil()函数:求不小于x的最小整数(向上取整)

floor()函数:求不大于x的最大整数(向下取整)

参考资料来源:百度百科-C语言函数

回答2:

#include
int main()
{
    int i = 2; //分母初始为2
    int j = 1; //分子初始为1
    int k = 0;  //循环20次的变量
    int tmp = 0; //保存分子的临时变量
    float sum = 0; // 求和
    for(k=0;k<19;k++) //循环20次
    {
        sum = sum + (float)i/j; //开始累加
        tmp = j; //存放分子临时变量
        j = i;//分子的值等于上次分母的值
        i = i + tmp; //分母的值为上次分子和分母的和
        printf("下一个数:%d/%d\n", i,j); //打印出下一个要累计的书
    }
    
    printf("sum=%0.2f\n", sum); //打印和
    
    return 0;
}

回答3:

#include
main()
{
int i,j,n=20;
int fz=2,fm=1;
float sum=2;
for(i=2;i<=n;i++)
{
fz=fm+fz;
fm=fz-fm;
sum+=fz*1.0/fm;
}
printf("%f",sum);
}

您好,很高兴为您解答,流星不死为您答疑解惑

如果本题还有不懂的地方请追问,望采纳我的回答。

祝楼主学习进步。

上面的代码可以直接复制到编译器里,带换行。

回答4:

1 + 2 1 和 2 是分子的基数,1+2 =3 ,2+3 = 5 ,3 + 5 = 8 ... 依次递增
— —
2 + 3 2 和 3 是分母的基数,2+3 =5 ,3+5 = 8 ,5 + 8 = 13 ... 依次递增

回答5:

#include

int main()
{
int i;
double numerator=2.0,denominator=1.0;//分子分母初始化,为保证除完为浮点数定义为双精度类型
double sum=0.0;
for(i=1;i<=20;i++)
{//循环累加每一项
sum+=numerator/denominator;//也可写成sum=sum+numerator/denominator;
numerator=numerator+denominator;
denominator=numerator-denominator;
}
printf("sum=%f",sum);
return 0;
}