#include <stdio.h> int main() { int n; double sum = 0.0; //必须用double,不然会丢失精度 scanf("%d", &n); for (int i = 1; i <= n; i++) { sum += 1.0 / i; } printf("%.6lf\n", sum); //因为float 有效数字只有6位,不够 return 0; } //double 有效数字有15位