解题思路:水仙花数只能是三位数,所以先分别求出百位,十位,个位三个数字,再分别求出它们的立方,最后相加和原数字相比较就行,利用for循环从100到1000逐个检查即可
注意事项:三个数字的立方和可能会很大,所以可能要用double类型的数字储存它
参考代码:
#include<stdio.h>
#include<math.h>
int main()
{
for (int i = 100; i < 1000; i++)
{
int a = i / 100;
int b = i / 10 % 10;
int c = i % 10;
double num = pow(a, 3) + pow(b, 3) + pow(c, 3);
if (i == num)
{
printf("%d\n", i);
}
}
return 0;
}
0.0分
1 人评分
校门外的树 (C++代码)浏览:873 |
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:1743 |
C二级辅导-阶乘数列 (C语言代码)浏览:622 |
C语言程序设计教程(第三版)课后习题3.7 (C++代码)浏览:1003 |
简单的a+b (C语言代码)浏览:669 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:565 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:1130 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:809 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:522 |
C语言程序设计教程(第三版)课后习题6.11 (C语言代码)for循环浏览:1141 |