设计程序计算并输出1+1/3+1/5+......1/99

#include<stdio.h>voidmain(){inti;doublesum;for(i=1,sum=0;i<=99;i=i+2){sum+=(double)1/... #include <stdio.h>
void main()
{
int i;
double sum;
for(i = 1, sum = 0; i <= 99; i = i + 2)
{
sum += (double)1 / i;
}
printf("sum = %lf\n", sum);
}
为什么sum=0?还要用sum += (double)1 / i;0加上右边的(double)1 / i做何解啊?急~求助~~~~~~~~~
展开
 我来答
热点那些事儿
高粉答主

2020-12-25 · 关注我不会让你失望
知道大有可为答主
回答量:8668
采纳率:100%
帮助的人:198万
展开全部

#include<stdio.h>

int main()

{double s=0;

 int i;

 for(i=1;i<100;i+=2)

   s+=1.0/i;

 printf("%lf\n",s);

 return 0;

}

扩展资料

C语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。 

相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。

而与或非的运算优先级都不一样,因此a && b || b && c解释为(a && b) || (b && c)

合理使用优先级可以极大简化表达式。

旅游小达人Ky
高粉答主

2020-12-27 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1893
采纳率:100%
帮助的人:36.8万
展开全部

#include<stdio.h>

int main()

{double s=0;

 int i;

 for(i=1;i<100;i+=2)

   s+=1.0/i;

 printf("%lf\n",s);

 return 0;

}

扩展资料

C语言有着清晰的层次,可按照模块的方式对程序进行编写,十分有利于程序的调试,且c语言的处理和表现能力都非常的强大,因此既能够用于开发系统程序,也可用于开发应用软件。通过对C语言进行研究分析,总结出其主要特点如下:

(1)简洁的语言

C语言包含的各种控制语句仅有9种,关键字也只有32 个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。

(2)具有结构化的控制语句

C语言是一种结构化的语言,提供的控制语句具有结构化特征,如for语句、if⋯else语句和switch语句等。可以用于实现函数的逻辑控制,方便面向过程的程序设计。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
山药山药王
2010-06-21 · TA获得超过887个赞
知道小有建树答主
回答量:227
采纳率:0%
帮助的人:0
展开全部
1、因为sum是累加的,初始时应为0。这样后面才可以用sum+=。若你一开始不令sum=0,则sum就有可能是一个随机的数字,后面再加就没意义了。

2、因为只写1的话默认是个int型数,i也是个int型数,那么1/i就是int型的1除以3,或除以5,7...等等,算出来都是0。因为整数除法忽略小数部分。若前面加上double,则整个除法被认为是double型的1.0除以double型的3.0,5.0。。。等等,算出来就是正确的小数结果了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
starsdreamever
2010-06-21 · TA获得超过1527个赞
知道小有建树答主
回答量:468
采纳率:0%
帮助的人:585万
展开全部
sum=0是初始化啊,sum += (double)1 / i;就是sum = sum +(double)1 / i,每次都用前一次的和加上分母递增后的值,得出来的sum是总和
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式