為什么編譯后是結果1000
#include<stdio.h>
int main()
{
int num,sd,td,hd;
for(num=100;num<1000;num++);
{
hd=num/100;
td=(num % 100) /10;
sd=num % 10;
if(num==td*td*td + sd*sd*sd + hd*hd*hd)
{
printf("%d\n",num);
}
}
return 0;
}
#include<stdio.h>
int main()
{
int num,sd,td,hd;
for(num=100;num<1000;num++);
{
hd=num/100;
td=(num % 100) /10;
sd=num % 10;
if(num==td*td*td + sd*sd*sd + hd*hd*hd)
{
printf("%d\n",num);
}
}
return 0;
}
2020-06-16
舉報
2020-06-16
for循環后面你加了分號(;)結束了for循環,if判斷內容和循環內容就單獨計算了
2020-07-02
td的約束不對,數學關系的錯誤
2020-06-20
我也是1000,結果仔細檢查我for和if后面都加了;分號
2020-06-16
td=(num % 100) /10;
這里td = 0;
所以結果是1000;