求解水仙花数,没有语法错误,但是 EXE 运行没结果!
#include <stdio.h>void main()
{
int i,m,n,sum=0,mmm;
for(i=100;i<1000;i++)
{
n=i;
while(n>0)
{
m=n%10;
n=n/10;
mmm=m*m*m;
sum=sum+mmm;
n=o;
}
if(sum==i)
printf("%5d",i);
}
putchar('\n');
}
#include <stdio.h> int main() { int i,m,n,sum,mmm; for(i=100;i<1000;i++) { n=i; sum=0; /*将sum=0;设在for循环里面,这样再次循环的时候就能确保sum的值重置,不受上一次循环的影响。*/ while(n>0) { m=n%10; n=n/10; mmm=m*m*m; sum=sum+mmm; /*把这里原本的n=0;删去*/ } if(sum==i) printf("%5d",i); } putchar('\n'); }