C语言1/1+1/2+1/3...+1/n,求和
#include<stdio.h>intmain(){doublen,i,s=0;scanf("%f",&n);for(i=1;i<=n;i++){s=s+1/i;}pr...
#include<stdio.h>
int main()
{
double n,i,s=0;
scanf("%f",&n);
for(i=1; i<=n ;i++)
{
s=s+1/i;
}
printf("%f\n",s);
return 0;
}
这样写对么 展开
int main()
{
double n,i,s=0;
scanf("%f",&n);
for(i=1; i<=n ;i++)
{
s=s+1/i;
}
printf("%f\n",s);
return 0;
}
这样写对么 展开
8个回答
展开全部
你好!
你的算法是对的,
但是要把 printf("%f\n",s); 里面的 %f 改成 %lf
还有要把 scanf("%f",n); 里面的 %f 改成 %lf
完整的代码是:
#include<stdio.h>
int main()
{
double n,i,s=0.0;
scanf("%lf",&n);
for(i=1; i<=n ;i++)
{
s=s+1/i;
}
printf("%lf\n",s);
return 0;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-21
展开全部
#include<stdio.h>
void main()
{ int k;
int i=1; //对求和中的分母赋值 //自增长的不能是float
double sum; //把sum当作和
int n=-1; //符号变化
printf("请输入你想输入的N\n");
scanf("%d",&k); //%d是输入整数
for(sum=0;i<=k;i++) //用for循环来求和
{ n=-n; //外面的那个循环完全没必要
sum=(sum+(1.0/i*n));
}
printf("计算结果是 %.6f\n",sum);
}
void main()
{ int k;
int i=1; //对求和中的分母赋值 //自增长的不能是float
double sum; //把sum当作和
int n=-1; //符号变化
printf("请输入你想输入的N\n");
scanf("%d",&k); //%d是输入整数
for(sum=0;i<=k;i++) //用for循环来求和
{ n=-n; //外面的那个循环完全没必要
sum=(sum+(1.0/i*n));
}
printf("计算结果是 %.6f\n",sum);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一个
sum=0
第二个
i++
第三个
1/t
sum=0
第二个
i++
第三个
1/t
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main()
{
double s=0;int i,n//double n,i,s=0; 控制变量最好是int类型的
scanf("%lf",&n);//scanf("%f",&n);double是%lf
for(i=1; i<=n ;i++)
{
s=s+1.0/i;//1改1.0
}
printf("%lf\n",s);//%lf
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询