c++基础题水仙花的bug

水仙花是像153这样的数
1的三次方+5的三次方+3的三次方=153
为什么我的代码运行结果有4位数?
求大佬赐教
#include <iostream

img

using namespace std;
int main() {
int a,b,c,d=100;
for (d<1000;d++;){
a=d/100;b=d/10%10;c=d%10;
if(aaa+bbb+ccc==d){
cout<<a<<b<<c<<endl;
}
}
return 0;
}

#include <iostream>

using namespace std;

int main()
{
    int a, b, c;
    for (int d = 100; d < 1000; d++)
    {
        a = d / 100;
        b = (d / 10) % 10;
        c = d % 10;
        if (a * a * a + b * b * b + c * c * c == d)
            cout << d << endl;
    }
    return 0;
}

for循环括号里应该在d<1000前加上;,还有aaa应该改成aaa,bc也是