内循环运行多少次?

How many time is the inner loop running?

for(i=1, count=0;i<=n;i=i+k)
   for(j=1;j<=k;j++)
      count++;

我不知道内部for循环执行了多少次。 我需要 n 和 k

的答案

让我们分别看一下这两个循环。

外层循环从 i=1 开始,每次迭代递增 k,直到大于 n。换句话说,它可以 运行 n/k 次,或者准确地说,floor(n/k) 次,因为循环不能 运行 非整数次。

内部循环相对简单 - 它从 j=1 开始,每次迭代递增 1,直到它大于 k,总共 k 次。

将这两个放在一起,你会得到 floor(n/k)*k

编辑:
正如评论中指出的那样,如果 n>=k,则此分析为真。如果 n<k 外循环将 运行 恰好一次。即,总次数 运行 为:max(1, floor(n/k))*k.

答案:floor(n/k) * k。为了准确地检查它,我想你可以用 print 打印。