关于##include#的问题,如何解决?

帮我看看为什么它循环不起来(っ °Д °;)っ


#include
int main()
{
    int N=0;
    scanf ("%d",&N);
    int number1=1,number2=0,Q=0;
    int i=0;
    do
    {
        int A=N/10000;
        int B=(N-A*10000)/1000;
        int C=(N-A*10000-B*1000)/100;
        int D=(N-A*10000-B*1000-C*100)/10;
        int E=(N-A*10000-B*1000-C*100-D*10);
        int number1=(A+B+C+D+E)*3+1;
    
        i=i+1;
        printf("%d:%d\n",i,number1);
        N=number1;
        Q=number1==number2;
        number2=number1;
    }   while (Q=0);
    
    return 0;
}

while条件是 Q!=0 吧,Q=0,这是赋值操作,while(Q=0)即while(0),当然一次都不执行。另位比较是==,不是=。
有帮助的话采纳一下哦!

while 先执行赋值语句,然后对左值进行判断

Q!=0;

Q=0是个赋值语句,Q==0才是判断语句,你这样写会死循环