为啥打印不出来,不知道哪里错了能告诉我,单纯这个代码

我输入的时候出现问题,打印不出来YES或者NO,能不能教我,请教各位

img

img

输入数据时,三个数字间有空格间隔:1 5 3

把那个输入的设置成一个int型试试

#include <stdio.h>
#include <stdlib.h>

int main(){
    int d;
    while(scanf("%d",&d)){
        int i1=d/100;
        int i2=d/10-10*i1;
        int i3=d-i1*100-i2*10;
        int h=i1*i1*i1+i2*i2*i2+i3*i3*i3;
        if (d==h)
        {printf("YES\n");}
        else
        {printf("NO\n");}
        
    }
    return 0;
}


我这样写能打印出来的