#语句二循环次数为什么是n(n+1),不是n*n。不太理解。
书本应该是没有问题的。
第一个for 循环是 n+1 次,0 ~ n-1次都ok,for循环的循环体(也就是第二个for循环)也会执行,这里就n 次了,最后一次当i 为 n,还会进入for 循环,只不过,条件不符合,循环体不执行了,所以,第一个for 循环共执行了n+1次,但是循环体,也就是第二个for 只会执行n次;
第二个for 循环,受到第一个for 条件影响,作为 第一个for 循环的循环体,只会运行 n 次,但是,注意,同理第一次for循环,它本身是n+1次,所以,总的是n * (n+1);
第三个语句,受到第二个for 的影响,也只会n次,所以最终是n*n 次
因为外层for循环还有一次是判断循环不满足条件和退出的
也就是说,n次是判断循环需要执行的,最后1次是判断for循环不需要执行的,总共n+1次。即外层循环执行n+1次
对于内层循环来说,自身要执行n+1次,但外层循环的前n次会满足循环条件,所以内层循环总共执行 n * (n+1)次
循环内的表达式必须内外层循环都满足条件才会执行,因此共执行 n * n次
书有问题吧