
一道VB试题
若有语句ForI=N1ToN2StepN3,在该循环体内含有_____语句会影响循环执行的次数。A.N1=N1+IB.N2=N2+N3C.I=I+N3D.N3=2*N3答...
若有语句For I = N1 To N2 Step N3,在该循环体内含有_____语句会影响循环执行的次数。
A. N1 = N1 + I B. N2 = N2 + N3 C. I = I + N3 D. N3 = 2 * N3
答案是选C,不知道为什么。 展开
A. N1 = N1 + I B. N2 = N2 + N3 C. I = I + N3 D. N3 = 2 * N3
答案是选C,不知道为什么。 展开
5个回答
展开全部
因为在上边的循环语句中,I是循环条件变量,因为I的值直接影响了循环的次数(大家都知道没结束一次循环I的值会增加一个步长,以上边的例子来说,I的值就会变成I+N3的值),在循环体中增加I的值会直接影响下一次对I的判断,如果I>N2(在N1<N2的情况下)或者I<N2(在N1>N2的情况下)就会结束循环,所以答案应该选C
展开全部
看实例你就明白了
比如
for i = 1 to 10 step 2
..................
next
理论上要执行5次(1,3,5,7,9),但是进入循环后,i变成3,第2次循环中,变成7了,到下一循环中,7-10间只能一次循环,最后i的值=11了。所以最多只能执行3次。
大大减少了循环的次数
比如
for i = 1 to 10 step 2
..................
next
理论上要执行5次(1,3,5,7,9),但是进入循环后,i变成3,第2次循环中,变成7了,到下一循环中,7-10间只能一次循环,最后i的值=11了。所以最多只能执行3次。
大大减少了循环的次数
追问
那N3=2*N3不就增加了步长吗?不会减少循环次数吗?
追答
当Step步长被确定后程序就不在检测Step的值了,所以 Step在运行的时候是不可变的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在执行语句FOR I=N1 TO N2 STEP N3后,这三个值都不会再因为后面的执行语句发生变化了,哪怕后面的N1,N2,N3发生了变化对FOR语句来说他的起始和终止还有步长都没有变化,但是I如果发生了变化在循环中是会产生效果的,I=I+N3这样明显会缩短循环的次数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个这个,I嘛,就是循环变量,每执行一次Next I就会让I自增一,在程序代码增加了N3,就已经变得更快了,当然影响嘛
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
答案是 C
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询