以文本方式查看主题

-  堕落街论坛  (http://duoluojie.1314179.com.cn:443/index.asp)
--  游戏体育  (http://duoluojie.1314179.com.cn:443/list.asp?boardid=331)
----  [求助]  (http://duoluojie.1314179.com.cn:443/dispbbs.asp?boardid=331&id=88230)

--  作者:overgame
--  发布时间:2005/7/1 13:51:00
--  [求助]

打印出所有的"水仙花"的数.(编写程序)

帮帮忙啊?


--  作者:sjwz0
--  发布时间:2005/7/1 17:27:00
--  
所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数
本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
2.程序源代码:
main()
{
int i,j,k,n;/*定义整型变量i,j,k,n*/
printf("\'water flower\'number is:");/*输出语句(没必要解释吧)*/
for(n=100;n<1000;n++) /*循环语句,每次循环N都自加1*/
{
i=n/100;/*求出N这个3位数的百位*/
j=(n-i*100)/10;/*求出N这个3位数的十位*/
k=n%10;/*%是求余运算符,比如7%4值为3,求出个位数*/
if(i*i*i+j*j*j+k*k*k==n)/*百位数,十位数,个位数的立方和*/
printf("%d\\n",n);/*以十进制整数形式输出*/
}
}
[此贴子已经被作者于2005-7-1 17:27:26编辑过]