
输入正整数m和n(1<=m,n<=1000),输出m~n之间的所有水仙花数,
水仙花数是指各位数字的立方和等于其自身的数。要求定义并调用函数is(number)判断number的各位数字之立方和是否等于其自身【输入形式】【输出形式】【样例输入】10...
水仙花数是指各位数字的立方和等于其自身的数。要求定义并调用函数is(number)判断number的各位数字之立方和是否等于其自身
【输入形式】
【输出形式】
【样例输入】100,400
【样例输出】153
370
371
我的代码如下 ,请问哪里错了
#include<stdio.h>
int is(int number);
main()
{
int n=0,m=0,i=0;
scanf("%d,%d",&n,&m);
for(i=n;i<=m;i++){
is(i);
printf("%d\n",i);
}
}
int is(int number)
{
int i,j,k;
i=number/100;
j=number/10-i*10;
k=number%10;
if(number==i*i*i+j*j*j+k*k*k)
return number;
} 展开
【输入形式】
【输出形式】
【样例输入】100,400
【样例输出】153
370
371
我的代码如下 ,请问哪里错了
#include<stdio.h>
int is(int number);
main()
{
int n=0,m=0,i=0;
scanf("%d,%d",&n,&m);
for(i=n;i<=m;i++){
is(i);
printf("%d\n",i);
}
}
int is(int number)
{
int i,j,k;
i=number/100;
j=number/10-i*10;
k=number%10;
if(number==i*i*i+j*j*j+k*k*k)
return number;
} 展开
展开全部
is(i);
printf("%d\n");
// 修改为:
if (is(i))
{
printf("%5d", i);
}
即,判断到是水仙花数的才需要输出,要加 if 判断
另外,if(number==i*i*i+j*j*j+k*k*k)
return number; 也需要修改一下
if (number == i * i * i + j * j * j + k * k * k)
{
return 1;
}
else
{
return 0;
}
更多追问追答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询