编译器没有输出任何数字


//2021年11月10日21:01:53
#include<stdio.h>
#include<math.h>
int main()
{
    double sum = 0,v;
    int n = 0,i,j = 10,temp,c = 1,flag = 0;
    //外层循环历编数字
    for(i =  100;i <= 999999;i++)
    {
        temp = i;
        //计算位数
        do{
            temp = temp / 10;
            n++;
        }while(temp > 0);
        //判断
     
        temp = i;
        while(temp > 0)//你怎么可以改变i的数值呢 
        {

            v = temp % j;
            temp = temp / j;
            sum = pow(v,n) + sum;
            if(i == sum) {
            c = 0; break;}
        }
        if(c == 0)//再一次卡在赋值号上面,好得很 
       {
        printf("%d\n",i);
    }
        //printf("%d",flag);
    }
    return 0;
}
    

打印三位数到七位数的水仙花数,点击编译执行后没有任何数字,自己调试过了也没发现什么问题啊流泪