主题:新手求助程序运行结果的问题
有如下程序:
s=0:i=1
do while i<=100
s=s+i
loop
end
程序运动结果是( )
A、5050 B、没有输出 C、无穷大的数 D、无限循环,直到数据溢出程序终止
这题应选哪一个答案?
我是在B和D答案中徘徊,我的想法是:因为i在循环体中不发生变化,所以i始终为1,满足条件循环为无限循环,只有S的值不断增加。 由于没有输出语句,一定没有输出,所以选B是有理由的。
但是,我又想s的值无限大时,是不是可以超过数值的范围,造成数据溢出程序终止呢?我又认为答案是D。
我试着运行程序,但漫长时间过去也没看到溢出,要想溢出数值是很大的,也许看不到溢出。
那这个答案应选哪一个?为什么?请高手指点迷津!
s=0:i=1
do while i<=100
s=s+i
loop
end
程序运动结果是( )
A、5050 B、没有输出 C、无穷大的数 D、无限循环,直到数据溢出程序终止
这题应选哪一个答案?
我是在B和D答案中徘徊,我的想法是:因为i在循环体中不发生变化,所以i始终为1,满足条件循环为无限循环,只有S的值不断增加。 由于没有输出语句,一定没有输出,所以选B是有理由的。
但是,我又想s的值无限大时,是不是可以超过数值的范围,造成数据溢出程序终止呢?我又认为答案是D。
我试着运行程序,但漫长时间过去也没看到溢出,要想溢出数值是很大的,也许看不到溢出。
那这个答案应选哪一个?为什么?请高手指点迷津!