两种方法:普通解法和巧妙解法
题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
2.普通解法代码实现:
#include "stdio.h" main() { int i,j,k,n; printf("水仙花数是:"); for(n=100;n<1000;n++) {i=n/100;/*分解出百位*/ j=n/10%10;/*分解出十位*/ k=n%10;/*分解出个位*/ if(i*100+j*10+k==i*i*i+j*j*j+k*k*k) printf("%-5d",n); } } 1234567891011121314
巧妙解法:
#include<stdio.h> #include "math.h" main() { int i,iG,iS,iB; for(i=100;i<1000;i++) { iG=i%10; /*计算个位数*/ iS=i/10%10; /*计算十位数*/ iB=i/100; /*计算百位数*/ if(i==pow(iG,3)+pow(iS,3)+pow(iB,3)) printf("%d ",i); } } 123456789101112
相关知识
C语言:输出所有的水仙花数
vs水仙花数c语言代码,求水仙花数c语言代码怎么写
C语言:PAT练习:水仙花数( T & F)
C语言编写水仙花数
1028: 判断水仙花数(C语言)
水仙花数C语言代码优化
水仙花数,C语言
【C语言】求水仙花数(完整代码)
C语言判断水仙花数
加法接力赛C语言算法,C语言循环结构
网址: C语言 水仙花数两种算法 https://m.huajiangbk.com/newsview501849.html
上一篇: C语言编写实现玫瑰花 |
下一篇: 铃铛花的花语与寓意(揭示铃铛花的 |