C语言--判断水仙花数———每日OJ>>

判断水仙花数———每日OJ>>

在这里插入图片描述

Description

判断一个数是否为"水仙花数",所谓"水仙花数"是指这样的一个数:其各位数字的立方和等于该数本身。例如:371是一个"水仙花数",371=33+73+13.

input

一个三位数

output

Yes或者No(Yes代表此数为水仙花数,No代表此数不是水仙花数)

Sample Input

371

Sample Output

Yes

解题思路

我们这里是输入一个三位数,就是说100<X<1000,根据水仙花数的特点:其各位数字的立方和等于该数本身。我们只需要将这个三位数的个位、十位、百位上的数字求出来,再判断X与各数字立方和是否相等就行了。
if(X==aaa+bbb+ccc)
这里可以调用 <math.h>中的pow(a,b)求立方

代码:

#include <stdio.h>
#include <math.h>
int main ()
{
    int num,sum;
    int a,b,c;
    scanf ("%d",&num);
    a = num/100;//求出百位上数字
    b = num / 10 % 10;		// 求十位
	c = num % 10;				// 求个位
	sum  = pow(a,3)+pow(b,3)+pow(c,3);
	if (sum==num)
        printf ("Yes");
    else
        printf ("No");
    return 0;
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值