解题思路:
显然,水仙花数只能在2—999中取得,因此设i的起始值是2,最大值是999。用ge=i%10取i的个位数,用shi=i/10%10取十位,再用bai=i/100取百位。
最后判断:if(i==ge*ge*ge+shi*shi*shi+bai*bai*bai)即可
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int i,ge,shi,bai;
for(i=2;i<=999;i++)
{
ge=i%10;
shi=i/10%10;
bai=i/100;
if(i==ge*ge*ge+shi*shi*shi+bai*bai*bai)
{
printf("%d\n",i);
}
}
return 0;
}
0.0分
0 人评分
C语言训练-求PI* (C语言代码)(正确结果竟然是谜一样的3.141591)浏览:1295 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:424 |
简单的a+b (C语言代码)浏览:520 |
WU-输入输出格式练习 (C++代码)浏览:1071 |
WU-拆分位数 (C++代码)浏览:775 |
WU-小九九 (C++代码)浏览:1678 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:597 |
简单的a+b (C语言代码)浏览:579 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:485 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:354 |
瞎折腾 2017-10-25 18:51:08 |
可以,确实是没必要考虑100以下的数