请大神指教

#include <stdio.h>
int main()
{
int num, sd, td, hd;
for ( num = 100; num < 1000; num++)
{
hd = num / 100;
td = (num / 10) % 10;
sd = num % 10;
if (hd * hd *hd+td*td*td+sd*sd*sd == num)
{
printf("水鲜花数字: %d\n", num);
}
}
return 0;
}//这是我在本地编译出来的结果;
在if后面多了个 ; 判断后不论结果,都直接结束判断的代码,然后不断执行输出
//我反复看了一下 if (hd * hd *hd+td*td*td+sd*sd*sd == num); //你原答案多了一个" ;" //导致if语句的判断提前结束 //这回你把;去掉,原答案就能通过了
NO.12 td = (num / 10) % 10; //原表达式有误