Problem1010--[视频]循环结构(for)3

1010: [视频]循环结构(for)3

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 76  Solved: 49
[Status] [Submit] [Creator:]

Description

学习目标:90秒内 一气呵成 打完代码,并且运行正确,并且提交正确。

【题意】

  输入n(n<=100),求s=1+1/2+1/3+…+1/n  (保留5位小数)

  当n=3时,s=1+1/2+1/3= 1+0.5 + 0.3333333=1.83333

【输入格式】
  一行一个正整数n。
【输出格式】
  一行一个实数s (保留5位小数)
【样例输入】
  20
【样例输出】
  3.59774

注意:

  不能写s  =  s  +  1/i ;

  要写s=s+1.0/i

  为什么?请看:

【例1】

int a,b,c;

a=1;   b=2;

c=a/b;

  输出c的值为0,因为整数除整数,得到的值是整数,如果有余数,余数自己消失,比如 11/4 等于2

  那么怎样才能让11/4等于3.75呢?

两个要求:

  1、11或4,至少其中一个写成11.0或4.0,比如11.0/4,或者 11/4.0,或者 11.0/4.0

  2、保留结果的c必须要是double类型(实数类型,也就是可以包容小数的类型)



 

Source/Category