文章
28
粉丝
230
获赞
23
访问
241.9k
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int main(int argc, char const *argv[])
{
bool found;
int m,n,flag;
while(scanf("%d %d",&m,&n)){
flag = 0 ;//初始化,flag,found
found = false ;
if(n==0){
break;
}
while(m<=n){
flag = funciton(m);//每次返回后flag的值可能会改变
if(flag ==1){//一旦改为1 ,意味着找到了水仙花数
found =true;//将found置为true ,便于后面对换行进行操作
}
m++;
}
if(found == false){
printf("no\n");
}else{//注意:当成功输出时,也需要一个换行 ...我在这里折腾了半天....
printf("\n");
}
}
return 0;
}
int funciton(int x){
int a , b ,c ,temp,key;
key = 0 ;
temp = x ;
a=x%10;
x/=10;
b=x%10;
x/=10;
c=x%10;
if (a*a*a+b*b*b+c*c*c == temp)
{
printf("%d ",temp);
key=1;
}
return key ;
}
登录后发布评论
暂无评论,来抢沙发