python求水仙花数,为什么求不到

python求水仙花数,哪里错了

a=1
b=0
c=0
while a<=9:
    while b<=9:
        while c<=9:
            if a*100+b*10+c==a**3+b**3+c**3:
                print(a*100+b*10+c)
            c+=1
        b+=1
    a+=1

```

a=1
b=0
c=0
while a<=9:
    b = 0
    while b<=9:
        c = 0
        while c<=9:
            if a*100+b*10+c==a**3+b**3+c**3:
                print(a*100+b*10+c)
            c+=1
        b+=1
    a+=1
 

你要用while却不知道要在循环之前初始化循环变量
那你为什么不用for呢,至少不会忘记初始化

b=0
c=0
定义的位置错了,你把他们放到外边,c循环10次,就循环结束了,改成每次循环都初始化为0就行了:

a = 1
while a <= 9:
    b=0
    while b <= 9:
        c = 0
        while c <= 9:
            if a * 100 + b * 10 + c == a ** 3 + b ** 3 + c ** 3:
                print(a * 100 + b * 10 + c)
            c += 1
        b += 1
    a += 1