如果一个正整数等于其各位数字的立方和,那么称这个数为阿姆斯特朗数。例如:407=4^3+7^3。
#include<stdio.h>
int IsArmStrong(int);
void PrintArmStrong(int,int);
int main(void)
{
int a,b;
printf("请输入寻找阿姆斯特朗数的范围:");
scanf("%d%d",&a,&b);
printf("%d %d之间的阿姆斯特朗数有:\n",a,b);
PrintArmStrong(a,b);
return 0;
}
int IsArmStrong(int n)
{
int sum=0,tmp=n;
while(tmp)
{
sum+=(tmp%10)*(tmp%10)*(tmp%10);
tmp=tmp/10;
}
if(n==sum)
return 1;
else
return 0;
}
void PrintArmStrong(int a,int b)
{
for(;a<=b;a++)
if(IsArmStrong(a))
printf("%d ",a);
}