1.1/(1.1/1.2)/(1.2/...

for循环举例(1+1/2+1/3...+1/99+1/100) - CSDN博客
for循环举例(1+1/2+1/3...+1/99+1/100)
我以前学语言时学的很不扎实,再加上长时间没有看书,所以忘了许多知识(其实有许多知识当初就没掌握),所以即使做起以前的题来,也很难一步到位,比如说一个关于循环的小题:求的和。一看到这个题时,我略一思考,即刻写出了代码,代码如下:
# include &stdio.h&
int main(void)
float sum = 0;
for(i=1; i&=100; ++i)
sum = sum + 1/i;
printf(&sum = %f\n&,sum);
其结果为:
这个结果当然是错误的,那么错在何处呢?
首先,这个和肯定是个实数(这里说的实数指的是浮点型数据),但的数据类型虽然已经是&,但&仍是int,所以,也是个整型数据,则后面加的、因为是整型,所以最终加进去的值都变成了,这样结果当然错误了。已经找到原因,那我们该如何解决这个问题呢?&有两种方法:
一,将控制的语句中的改成,如下所示:
for(i=1; i&=100; ++i)
sum = sum + 1.0/i;
这样可以得到正确结果;
二,对中的进行强制类型转化,即
for(i=1; i&=100; ++i)
sum = sum + 1/(float)(i);
这样也可以得到正确结果。(需要说明的是,在语言中进行强制类型转化时,后面的被转化变量有时需要加括号,有时不需要加括号,一般推荐都加上括号)
对于这两种方法,我们推荐使用第一种,其源码如下:
# include &stdio.h&
int main(void)
//这里 i不能用浮点型,因为下边会用到i++,如果i用了浮点型,代码也可以编译通过,但不要这样做,坚决不要!!!
float sum = 0;
for(i=1; i&=100; ++i)
sum = sum + 1.0/i;//推荐使用
//sum = sum + 1/(float)(i); 这两种格式效果相同 其中(float)(i)是强制类型转化,把整型变量变为浮点型,不推荐使用
printf(&sum = %f\n&,sum);
}最终正确结果为:
好了,就这样了。
【所有代码均在windows系统下VC++6.0下运行通过】
(如有错误,敬请指正)
本文已收录于以下专栏:
相关文章推荐
对于for循环的使用其实很简单
循环变量的初始化
还有循环体
具体演示如图!
举例1-100输出7的倍数
for(int i=0; i
第一种实现:
public class ThreadAB1 {
Thread A = new Thread(new Runnable() {
public void run() {
解法1:利用递归(&&的短路特性)&&的短路特性:即A&&B中,加入A为假,那么B就不会被运算,因此我们只要将递归放在B中,而将终止条件放在A中即可解决该问题。。。
1 /*************...
package jereh1;
import java.util.S
public class Class3Xunhuan {
public static void main(St...
浮点数运算
$a=3.4 b=345.3
echo "scale=4;$a*$b/2"|bc
结果为587.0100
$echo $a*$b/2|bc -l
求1-1/2+1/3-1/4+...+1/99-1/100
尝试不用数学上的方法((-1)的n次方)来完成,用了一种比较笨的办法:
int main()
前两天听到米老师讲到一件小事,是关于发邮件时附件名称的事。本来都没有意识到,可是当米老师讲完之后,突然觉得自己做的差极了。这是一个细节的问题,但是更是一个关乎个人素质的问题。
老子曰“千里之行,始于足...
他的最新文章
讲师:王禹华
讲师:宋宝华
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)扫二维码下载作业帮
3亿+用户的选择
下载作业帮安装包
扫二维码下载作业帮
3亿+用户的选择
(1-2平方/1)(1-3平方/1)...(1-9平方/1)(1-10平方/1)
扫二维码下载作业帮
3亿+用户的选择
(1-2平方/1)(1-3平方/1)...(1-9平方/1)(1-10平方/1)=(1-1/2)(1+1/2)(1-1/3)(1+1/3)(1-1/4)(1+1/4)...(1-1/10)(1+1/10)=1/2x3/2x2/3x4/3x3/4x5/4...x9/10x11/10=1/2x11/10=11/20如果本题有什么不明白可以追问,
为您推荐:
其他类似问题
(1-2平方/1)(1-3平方/1)...(1-9平方/1)(1-10平方/1)=(1+1/2)(1+1/3)...(1+1/10)*(1-1/2)(1-1/3)...(1-1/10)=3/2*4/3*...*11/10*1/2*2/3*...*9/10=11/2*1/10=11/20
扫描下载二维码}

我要回帖

更多关于 城邦争霸1.1.2下载 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信