整数趣题(阿姆斯特朗数)

来源:互联网 发布:文明5金币修改器 知乎 编辑:程序博客网 时间:2024/05/21 05:07
/**************************************** *  File Name  : integer.c *  Creat Data : 2015.1.24*  Author     : ZY *****************************************/ /*整数趣题*//*阿姆斯特朗数*//*如果一个正整数等于其各个数字的立方和,则为阿姆斯特朗数。试编程求1000以内的所有阿姆斯特朗数*/#include <stdio.h>#include <math.h>int main(){int i,t,k,a[3];printf("There are following Armstrong number smaller than 1000:\n");for( i = 2;i < 1000;i++ )//穷举要判定的数i{for( t = 0,k = 1000;k >= 10;t++ )//截取整数i的各位(从高到低){a[t] = (i%k)/(k/10);//分别赋予a[0]~a[2]k /= 10;}if(i == pow(a[0],3) + pow(a[1],3) + pow(a[2],3))//判别是不是阿姆斯特朗数{printf("%10d",i);}}printf("\n");return 0;}

0 0