判断一个数是不是水仙花数

#define _CRT_SECURE_NO_WARNINGS 1
#include

int index(int n /*要乘的数*/)
{
int a = n;
int sum = 0;//次方数
while (a > 0)
{
a /= 10;
sum++;
}

int b = n;//记录n的值
int k = 0;//总和
for (int i = 0; i < sum; i++)
{
int d = b % 10;
int c = 1;
for (int j = 0; j < sum; j++)
{
c *= d;//每位数次方后的值
}
k += c;//累积值
b /= 10;//数值向前进一位
}
return k;
}

int main()
{
//printf("%d", index(33));
int a = 0;
int b = 0;
printf("打印a到b的水仙花数\n");
printf("a:"); scanf("%d", &a);
printf("b:"); scanf("%d", &b);
printf("水仙花数:");

for (int i = a; i <= b; i++)
{
if (i == index(i))
{
printf("%d ",i);
}
}
return 0;
}
全部评论

相关推荐

这是什么操作什么意思,这公司我服了...
斯派克spark:意思是有比你更便宜的牛马了
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷...:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
测试糕手手:社会第一课,随便吹牛逼,直接说四个月,别老实。老实人只会被欺负
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务