轻松悠闲的都市小说:帮忙做一道程序题

来源:百度文库 编辑:神马品牌网 时间:2024/05/07 05:00:11
for i=1 to 3
for j =1 to i
for k=j to 3
a=a+1
nextk
nextj
nexti
执行上面的3重循环后a的值
答案是14 可我就是算不出 希望各位帮忙 要祥解

假设a的初始值是0,
那么实际上这是一个要求第3重循环的循环次数。
i = 1时,
j 是从 1 循环到 1,k = 1 to 3 '循环3次

i = 2时
j 是从 1 循环到 2
j循环第一次(j=1),k=1 to 3 '循环3次
j循环第二次(j=2),k=2 to 3 '循环2次

i = 3时
j 是从 1 循环到 3
j循环第一次(j=1),k=1 to 3 '循环3次
j循环第二次(j=2),k=2 to 3 '循环2次
j循环第一次(j=3),k=3 to 3 '循环1次

for i ( 3 次)
for j ( 3 + 2 + 1 = 6 次)
for k ( 3 + 2 + 1 + 3 + 2 + 3 = 14 次)

a=a+1也就加了14次

这个问题有毛病,没有给a赋初值啊……

其实三段循环分别执行的次数为:

for i ( 3 次)
for j ( 3 + 2 + 1 = 6 次)
for k ( 3 + 2 + 1 + 3 + 2 + 3 = 14 次)

如果是单独这样一段程序的话,a默认初值为0,那么就是14。

前提a=0,就是14阿

可以解到程序里验证一下,如果想知道过程,可以单步执行