用C语言编译出1000以内三位数的阿姆斯特朗数
时间: 2023-12-27 16:04:14 浏览: 67
水仙花数,也称为阿姆斯特朗数,是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(C语言源代码)
以下是用C语言编写的程序,可以输出1000以内的三位数阿姆斯特朗数:
```
#include <stdio.h>
#include <math.h>
int main()
{
int num, originalNum, remainder, n = 0, result = 0;
for(num = 100; num <= 999; num++)
{
originalNum = num;
while(originalNum != 0)
{
originalNum /= 10;
++n;
}
originalNum = num;
while(originalNum != 0)
{
remainder = originalNum % 10;
result += pow(remainder, n);
originalNum /= 10;
}
if(result == num)
{
printf("%d ", num);
}
n = 0;
result = 0;
}
return 0;
}
```
与上一个程序不同的是,这个程序遍历的数只有三位数,因此将遍历的范围限定在100到999之间即可。
阅读全文