这个循环是怎么看的?

#include<stdio.h>
void main( )
{
    int i,b,k=0;
    for(i=1;i<=5;i++)
    { 
        b=i%2;
        while(b- ->=0) k++;
    }
    printf(“%d,%d”,k,b);
}

外循环五次,k表示内循环的总次数。

#include <stdio.h>

void main()
{
    int i, b, k = 0;
    for (i = 1; i <= 5; i++)
    {
        b = i % 2; // b的取值为1,0,1,0,1
        printf("%d\t", b);
        while (b-- >= 0) //先判断后自减,所以k被累加2+1+2+1+2 = 8 次
            k++;//b自减前为0时,满足条件,k累加,下一次b初始值为-1,不符合条件,但仍然在判断后自减,自减后b的值变为-2
    }
    printf("%d, %d", k, b); //最后一次循环时,b一开始被赋值为1,在循环内自减后变为-2
}