永发信息网

C 语言,求两个正整数之间的水仙花数

答案:3  悬赏:40  手机版
解决时间 2021-02-11 23:44
  • 提问者网友:疯孩纸
  • 2021-02-11 04:41
输入2 个正整数m 和n(1≤m,n≤1000),输出m~n之间的所有水仙花数??水仙花数是指各位数字的立方和等于其自身的数??要求定义并调用函数is(number)判断number的各位数字之立方和是否等于其自身??
【输入形式】
输入2个正整数m 和n(1≤m,n≤1000)
【输入输出样例1】(下划线部分表示输入)
Input m: 100
Input n: 400
153
370
371
最佳答案
  • 五星知识达人网友:第四晚心情
  • 2021-02-11 05:43
include int IsNum(unsigned int x)
{
int num = 0;
int cal = 0;
unsigned int tmp = x;
while (tmp>0)
{
num = tmp%10;
tmp /= 10;
cal += (num*num*num);
}
if (x == cal)
return 1;
return 0;
}
int main(void)
{
int m,n;
printf ("Input M:");
scanf ("%d", &m);
printf ("\nInput n:");
scanf ("%d", &n); for (; n>m; m++)
{
if (IsNum(m))
printf ("%d ", m);
}
return 0;
}
全部回答
  • 1楼网友:十鸦
  • 2021-02-11 07:28
#include"stdio.h" int main() { int m; int n; int i; int k1,k2,k3; printf("Input m:"); scanf("%d",&m); printf("Input n:"); scanf("%d",&n); for(i=m;i<=n;++i) { k1=i/100; k2=i%10; k3=i%100/10; if(k1*k1*k1+k2*k2*k2+k3*k3*k3==i) printf("%d\n",i); else continue; } return 0; }
  • 2楼网友:行雁书
  • 2021-02-11 06:43
可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。
  • c语言
  • 水仙花数
  • 我要举报
    如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
    点此我要举报以上问答信息
    大家都在看
    推荐资讯