计类02Pb


私信TA

用户名:Pbcxy

访问量:15530

签 名:

等  级
排  名 812
经  验 3671
参赛次数 0
文章发表 24
年  龄 18
在职情况 学生
学  校 东北石油大学
专  业

  自我简介:

解题思路:首先由题知水仙花是三位数,所以由100-999之间就可以,将个位十位百位都分出来再分别三次方相加,最后判定是否相等原数即可

注意事项:用循环有一个好处 是从100一直向上加,碰到水仙花数直接输出就解决了从小到大排序的问题,

如果从大到小排序可以再定义一个数组反向输出

参考代码:

int i=100;
int gw,sw,bw;                        //gw 个位 sw十位  bw百位
while(i<1000)
 {
  gw=i%10;
  sw=(i/10)%10;
  bw=(i/10)/10;
  if(gw*gw*gw+sw*sw*sw+bw*bw*bw==i)     //判定是否相等
  {
   printf("%d\n",i);
  }
 i=i+1;
 }
return 0;

 

0.0分

0 人评分

  评论区

  • «
  • »