为了账号安全,请及时绑定邮箱和手机立即绑定

C语言问题1

C语言问题1

C++
qq_風_21 2017-11-20 22:23:52
#include <stdio.h> main() { int i=1,n=0,s=0; while(s<=10000) { s+=i;  i=2*i; n++; } printf("s=%d,n=%d\n",s-i/2,n-1); } 为什么要s-i/2,这个程序的S应该没有多加
查看完整描述

1 回答

?
慕用4063026

TA贡献195条经验 获得超115个赞

有点不明白你想问什么,我的理解:s-i/2是没问题的,如果直接s输出为s==16383,因为,最后一次s==8191时,

while(s<=10000)

{

s+=i;

 i=2*i;

n++;

}

这个还要再循环一次,所以最后输出要s-i/2和n-1

查看完整回答
反对 回复 2017-11-20
  • 1 回答
  • 0 关注
  • 1071 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信