解题思路:首先由题知水仙花是三位数,所以由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 人评分
【绝对值排序】 (C语言代码)浏览:499 |
printf基础练习2 (C语言代码)浏览:3404 |
C语言训练-自由落体问题 (C语言代码)浏览:1775 |
【绝对值排序】 (C++代码)浏览:720 |
人见人爱A+B (C语言代码)浏览:663 |
淘淘的名单 (C语言代码)答案错误???浏览:624 |
WU-蓝桥杯算法提高VIP-交换Easy (C++代码)浏览:1186 |
简单的a+b (C语言代码)浏览:674 |
WU-printf基础练习2 (C++代码)浏览:2061 |
幸运数 (C++代码)浏览:1309 |