设n为正整数。试确定下列各程序段中前置以记号@的语句的频度:

设n为正整数。试确定下列各程序段中前置以记号@的语句的频度:(5) for(i=1; i<=n; i++) { for(j=1; j<=i; j++) { for(k=1; k<=j; k++) @ x += delta; }答案是 (5) 1+(1+2)+(1+2+3)+...+(1+2+3+...+n),看不懂,求解释?谢谢
2026年09月24日 19:29
有2个网友回答
网友(1):

for(i=1; i<=n; i++) 
    {
        for(j=1; j<=i; j++) 
            {
            for(k=1; k<=j; k++)
                @  x += delta;
            }
     }

这个有什么不明白的么,@那一句到底被执行了多少次,取决于n的大小,当n=1时,@那一句执行1次,当n=2时,执行的次数等于1+(1+2)=4,当n=3时,执行的次数为1+(1+2)+(1+2+3)=10次,n=4时执行1+(1+2)+(1+2+3)+(1+2+3+4)=20次,然后n没有赋值的时候,就是n=n时,就是1+(1+2)+(1+2+3)+...+(1+2+3+...+n),看明白了么?

网友(2):

我也看不懂,有这种写法吗?