求教一道C语言题目
问题:输入2个正整数m和n(1≤m,n≤1000),输出m~n之间的所有水仙花数。水仙花数是指各位数字的立方和等于其自身的数。要求定义并调用函...
问题:输入2 个正整数m 和n(1≤m,n≤1000),输出m~n之间的所有水仙花数。水仙花数是指各位数字的立方和等于其自身的数。要求定义并调用函数is(number)判断number的各位数字之立方和是否等于其自身。
我的答案:
#include<stdio.h>
int is(int number)
{
int a,b,c;
a=number%10;
b=(number/10)%10;
c=number/100;
if(number==a*a*a+b*b*b+c*c*c&&number!=1000)
{return 0;
}
return 1;
}
int mian(void)
{
int m,n,i,number;
int is(int number);
printf("Input m: ");
scanf("%d",&m);
printf("Input n: ");
scanf("%d",&n);
for(i=m;i<=n;i++){
if(is(number)=0){
printf("%d\n",i);}
}
return 0;
}
求解哪里错了? 展开
我的答案:
#include<stdio.h>
int is(int number)
{
int a,b,c;
a=number%10;
b=(number/10)%10;
c=number/100;
if(number==a*a*a+b*b*b+c*c*c&&number!=1000)
{return 0;
}
return 1;
}
int mian(void)
{
int m,n,i,number;
int is(int number);
printf("Input m: ");
scanf("%d",&m);
printf("Input n: ");
scanf("%d",&n);
for(i=m;i<=n;i++){
if(is(number)=0){
printf("%d\n",i);}
}
return 0;
}
求解哪里错了? 展开
展开全部
#include<stdio.h>
int is(int number)
{
int a=0,b=0,c=0;
//赋值
a=number%10;
b=number/100;
c=(number-b*100)/10;//改了下
if(number==a*a*a+b*b*b+c*c*c&&number!=1000)
{return 0;
}
return 1;
}
int mian(void)
{
int m=0,n=0,i=0;
//错1
printf("Input m: ");
scanf("%d",&m);
printf("Input n: ");
scanf("%d",&n);
for(i=m;i<=n;i++){
if(is(i)==0){ / / 错2
printf("%d\n",i);}
}
return 0;
}
我没调试 有问题追问
int is(int number)
{
int a=0,b=0,c=0;
//赋值
a=number%10;
b=number/100;
c=(number-b*100)/10;//改了下
if(number==a*a*a+b*b*b+c*c*c&&number!=1000)
{return 0;
}
return 1;
}
int mian(void)
{
int m=0,n=0,i=0;
//错1
printf("Input m: ");
scanf("%d",&m);
printf("Input n: ");
scanf("%d",&n);
for(i=m;i<=n;i++){
if(is(i)==0){ / / 错2
printf("%d\n",i);}
}
return 0;
}
我没调试 有问题追问
展开全部
if(number==a*a*a+b*b*b+c*c*c&&number!=1000)
要有括号
if((number==a*a*a+b*b*b+c*c*c)&&(number!=1000))
要有括号
if((number==a*a*a+b*b*b+c*c*c)&&(number!=1000))
追问
编译之后显示7.c: In function `mian':
7.c:26: error: invalid lvalue in assignment
7.c:35:2: warning: no newline at end of file
求解,谢谢了~~
追答
删去 int is(int number);
if(is(number)=0)改为 if(is(number)==0)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询