感觉自己总是把问题复杂化...一个简单的问题总是求解的很麻烦
唉 继续努力吧...
参考代码如下:
#include <stdio.h> int main() { int num = 100; //num是要被检测的三位数,从100开始 int sum = 0; //各位数字的立方和 int rest; //存放所算出的每一位的数字 int tmp; //用一个临时变量存放需要计算的num while (num <= 999) //检测所有三位数 { tmp = num; while (tmp != 0) { rest = tmp % 10; sum += rest * rest * rest; tmp = tmp / 10; } if (sum == num) //若所求总和sum和num相等则是水仙花数 打印 { printf("%d\n", num); } sum = 0; //之前一直没输出,原来是忘了这一步 num++; } return 0; }
0.0分
0 人评分
最小公倍数 (C语言代码)浏览:898 |
拆分位数 (C语言代码)浏览:1361 |
简单的a+b (C语言代码)浏览:564 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:956 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:580 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:909 |
矩阵加法 (C语言代码)浏览:1771 |
分解质因数 (C++代码)浏览:1561 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:617 |
金额的中文大写浏览:3753 |