输出的应该是n+1才对,
首先,可以计算出和的公式为S=2^(n+1)-1,S>2010时,n最小为10
n=8时,S=511,n=8+1=9,S<2010
S=511+2^9=1023,n=9+1=10,S<2010
S=1023+1024=2047, n=10+1=11 ,S>2010 ,
输出n=11
当然,为方便验算答案,可将2010这个值改为2,则n=1时,S=3>2,而输出的却是n=2
正确程序可改为:将n=n+1移到判断语句 "S是否>2010之后",若大于,输出n,若小于,n=n+1,重复循环
“应该把程序框图的“输出n”改成“输出n-1”.”
你的想法很好,是完全正确的,比我的简便!