新人求助,为什么把geti放到for里面才能正确运行
c吧
全部回复
仅看楼主
level 4
##
2025年08月02日 10点08分 1
吧务
level 11
图一,首先i值在循环之前不确定,大概率是0,也就是说geti的初始值1.0/i不确定,极有可能除0导致程序崩溃!!!其次,就算没有因为除0崩溃,geti的值也会是一个固定值,而不会随着for循环的i变化,与题意不符[你懂的][你懂的]
2025年08月02日 11点08分 2
太通透了,万分感谢[茶杯]
2025年08月02日 16点08分
吧务
level 11
直接
int n;
double sum = 0;
scanf("%d", &n);
for(int i = 1; i <= n; i++)
sum += 1.0 / i;
或者
while(n > 0)
sum += 1.0 / n--;
printf("%lf", sum);
return 0;
不香吗,
干嘛非自找麻烦去定义个geti来添乱,
大道至简,
程序越简洁越好
2025年08月02日 11点08分 4
1