提交时间:2024-01-27 08:49:55

运行 ID: 129532

题目描述Description已知:Sn=1+1/2+1/3+…+1/n。显然对于任意一个整数K,当n足够大的时候,Sn大于K。现给出一个整数K(1<=k<=15),要求...展开  我来答 分享 举报 4个回答#热议# 网上掀起『练心眼子』风潮,真的能提高情商吗? hhd528 2019-04-09 关注 sn=1.0/i;如果是1/i就是int类型,1.0/i是double类型,因为sn是double类型,所以用1.0/i。还有建议用while循环,因为k最高能达到15,所以i<=1000000不够,继续开大有可能会爆,可以将题目中的n初始值定为0,然后每次加一,接着开for循环,i<=n,sn=1.0/i;循环过后再判断sn是否大于k,如果是,输出n,break。上文所有字母变量都是题目中的(注意:这种方法while可能会爆,所以建议用wchyumo2011 的程序,我试过了,不会爆) 3 评论(1) 分享 举报 图吧科技 广告2024-01-24 2023年新版等比数列知识点归纳总结,要考的知识点就这些,打印背熟,考试拿高分,立即下载等比数列知识点归纳总结使用吧! www.pptb.cn 笃侠6A 2015-04-26 · TA获得超过3729个赞 关注 #include<cstdio.h> int main(){ double sn=0; int i=1,k; scanf("%d",&k); while(sn<=k){ sn+=1.0/i; i++; } printf("%d\n",i); return 0; }