题解 | #牛牛学数列2#
#include <stdio.h>
int main()
{
// 接收值,初始值为0
double sum = 0;
// 临界值
int n;
while (scanf("%d", &n) != EOF)
{
for (int i = 1; i <= n; i++)
{
// 注意:
// 两个整数相除只能得到一个整数商,余数被舍弃
// 所以此处将除法中的被除数设为1.0浮点数字面常量,这样能使商为一个浮点数,余数不被舍弃
sum = sum + 1.0 / i;
}
printf("%.6lf\n", sum);
}
return 0;
}