以下程序段中语句“x++”的语句频度为:
一、解题思路
1、首先,这道题目是三层for循环嵌套,一般我们的思路是从里向外往出推结果;
2、其次,我们先观察最里边的一层循环,其变量为k,循环次数是由变量j决定的。并且由于k的初始值是1,结束条件为j,所以第三层循环语句的执行次数便为:j次;
3、然后,我们再观察中间层循环,其变量为j,同样其循环次数也不是一个固定的值,而是由变量i决定的。因为j的初始条件为1,结束条件为i,所以里边两层的循环从次数为从1到i的求和,通过求和公式得到结果为:i*(i+1)/2次;
4、最后,我们观察最外层循环,其变量为i,循环次数是由变量n决定的。由于i的初始值为1,结束条件为n,所以从最外层到最里层的总的循环次数为对i*(i+1)/2求n项和,更具求和公式得计算得出总的语句执行次数为:n(n+1)(n+2)/6次。
二、解题步骤
如下图所示: 综上所述,答案为:n(n+1)(n+2)/6次。
总结
1、当多重循环嵌套时,一定要考虑每一层之间的逻辑关系,要看清楚变量所对应的初始条件和结束条件;当初始条件和结束条件发生改变时,计算结果也会大不一样; 2、i^2的求和公式的结果为:n(n+1)(2n+1)/6次。
|