关于C语言while的运算

img


不太理解为什么一次也不执行欸!
不应该是执行一次吗!
求详细的解答!
1245863

while括号中的k=0是赋值,不是条件,所以一次都不会执行

k=0的值为0,不进入循环
=是赋值,==才是判断

img

#include<stdio.h>

int main()
{
        int k=0;
        printf("%d",k=0);
        while(k=0)
        {
        printf("1");
        k=k-1;
        }
       return 0;
}

while括号中的k=0是赋值语句,返回值是所赋的值,所以while中的判断可以替换为while(0),所以一次也不执行