例题:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153等于1的三次方+5的三次方+3的三次方。
代码如下:
/*程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。*/
#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("%-7d",n);
}
}
printf("\n");
}
运行输出窗口如下:
本周其他练习
C语言编程>第一周 ① 输入两个数,并使其从大到小输出(利用指针方式)。
C语言编程>第一周 ③ 输入某年某月某日,判断这一天是这一年的第几天。
C语言编程>第一周 ⑤ 有1、2、3、4,4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
C语言编程>第一周 ⑥ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
C语言编程>第一周 ⑦ 利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
C语言编程>第一周 ⑧ 输入两个正整数m和n,求其最大公约数和最小公倍数。
越努力越幸运!
加油,奥力给!!!