如题,根本不理解为啥这样,手机和电脑用的是相同代码
#include<stdio.h>
int qwe(int m)
{
int i,o,p;
i=m%10;
o=m/10%10;
p=m/100;
if(iii+ooo+ppp==m)
return m;
}
int main(void)
{
int a,i,b,count;
for(i=100;i<1000;i++)
{
a=qwe(i);
printf("%d ",a);
count++;
if(count%5==0)
{
printf("\n");
}
}
return 0;
}
逻辑判断有误,修改处见注释,供参考:
#include<stdio.h>
int qwe(int m)
{
int i,o,p;
i=m%10;
o=m/10%10;
p=m/100;
//if(i*i*i+o*o*o+p*p*p==m) //修改
//return m; //修改
return (i*i*i+o*o*o+p*p*p == m);//修改
}
int main(void)
{
int a,i,b,count=0; //修改
for(i=100;i<1000;i++)
{
a=qwe(i);
if (a){ //修改 a=1,i为水仙花数 ,a = 0时,i 不是水仙花数
printf("%d ",i); //printf("%d ",a);//修改
count++;
if(count%5==0)
{
printf("\n");
}
}
}
return 0;
}
把代码规范之后再做测试,不建议把能省略的花括号省略