解题思路:首先由题知水仙花是三位数,所以由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语言代码)浏览:891 |
【绝对值排序】 (C语言代码)浏览:717 |
C语言程序设计教程(第三版)课后习题6.11 (C语言代码)浏览:549 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:542 |
图形输出 (C语言代码)浏览:1387 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:560 |
10月月赛题解浏览:536 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:1220 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:527 |
回文数(一) (C语言代码)浏览:1118 |