在编译器和作业的网站提交上去都是对的,
估计你的作业网站有bug。另外,阿姆斯特朗数 并不一定是 立方和,而是“一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数”
程序代码:#include <stdio.h>
#include <stdbool.h>
bool foo( unsigned n )
{
unsigned sum = 0;
for( unsigned t=n; t!=0; t/=10 )
sum += (t%10)*(t%10)*(t%10);
return sum == n;
}
int main( void )
{
for( unsigned i=2; i!=1000; ++i )
if( foo(i) )
printf( "%u\n", i );
}输出
153
370
371
407
370
371
407


