使用 C 程序语言检查数字是否是阿姆斯特朗数


问题

如何使用 C 编程语言检查给定的数字是否是阿姆斯特朗数

解答

阿姆斯特朗数是指一个数字等于其各个位数的立方之和。

语法

pqrs………=pow(p,n)+pow(q,n)+pow(r,n)+……….

例如,153、371、1634 等都是阿姆斯特朗数。

153=1*1*1 + 5*5*5 + 3*3*3
   =1+125+27
   =153 (Armstrong number)

程序

 在线演示

#include<stdio.h>
int main(){
   int number,remainder,total=0,temp;
   printf("enter the number=");
   scanf("%d",&number);
   temp=number;
   while(number>0){
      remainder=number%10;
      total=total+(remainder*remainder*remainder);
      number=number/10;
   }
   if(temp==total)
      printf("This number is Armstrong number");
   else
      printf("This number is not Armstrong number");
   return 0;
}

输出

enter the number=371
This number is Armstrong number
Check: 371=3*3*3 +7*7*7 + 1*1*1
           =27 + 343 +1
           =371
enter the number=53
This number is not Armstrong number

说明

53 = 5*5*5 + 3*3*3
   =125 +27
   = 152 != 53

更新于:05-3-2021

9 千次以上浏览

开启您的 事业

完成课程以获得认证

开始学习
广告