1000以内的水仙花数

来源:百度知道 编辑:UC知道 时间:2024/07/01 06:49:17
#include<stdio.h>
void main()
{
int a,b,c,m;
for(m=100;100=<m<=999;m=m+1)
{
a=m/100;
b=m/10%10;
c=m%10;
if a*a*a+b*b*b+c*c*c==m
printf("水仙花数");
printf("%d",m);
}
}怎么错了

for(m=100;100=<m<=999;m=m+1)不是这样用的,
100<=m<=999这句语法有错,m<=999,你这样写就可以了,应为你前面已经用了m=100,这就是初始化的值,如果要用m取范围的话应该这样写:
100<=m&&m<=999;
if语句也错了
if(a*a*a+b*b*b+c*c*c==m)//打括号
{ //if为真执行以下内容,
printf("水仙花数");
printf("%d",m);
} //if结束

#include<stdio.h>
void main()
{
int a,b,c,m;
for(m=100;m<=999;m=m+1)
{
a=m/100;
b=m/10%10;
c=m%10;
if(a*a*a+b*b*b+c*c*c==m){
printf("水仙花数");
printf("%d\n",m);
}
}
}

for(m=100;100=<m<=999;m=m+1)不是这样用的,
100<=m<=999这句语法有错,m<=999,你这样写就可以了,应为你前面已经用了m=100,这就是初始化的值,如果要用m取范围的话应该这样写:
100<=m&&m<=999;
if语句也错了
if(a*a*a+b*b*b+c*c*c==m)//打括号
{ //if为真执行以下内容,
printf("水仙花数");
printf("%d",m);
} //if结束

错了