问题
阿姆斯特朗数:如果一个整数等于其各位数字立方和,,则称该数为阿姆斯特朗数也称自恋数。如:407=4×4×4 + 7×7×7。求1000内所有的阿姆斯特朗数。
分析
穷举。
解决方案
1: /** 2: * @file 024c.c 3: * @author Chaolong Zhang <emacsun@163.com> 4: * @date Sat May 25 10:49:17 2013 5: * 6: */ 7: 8: #include <stdio.h> 9: #include <math.h> 10: 11: int main(int argc, char *argv[]) 12: { 13: int n; 14: for (n=0; n <= 1000; ++n) 15: { 16: if (n == pow(n%10,3) + pow( (int) n/10%10 , 3) + pow( (int)n/100%10, 3 ) + pow((int)n/1000,3)) 17: { 18: printf ("%d\n",n); 19: } 20: else 21: continue; 22: } 23: return 0; 24: }
结果
0 1 153 370 371 407