水仙花数算法流程图(C语言编写程序求水仙花数)
C语言编写程序求水仙花数
水仙花数是一个数学问题,其实质是一个三位数,个位数的立方加十位数的立方加百位数的立方之和等于这个三位数本身。例如153=1*1*1+5*5*5+3*3*3,即153=1+125+27。这是一个相对较为简单的C程序,但程序中包括C程序知识与技巧非常的重要,对于初学者是一个非常好的练习手段。
程序思路:
1. 三位数其范围就是(100到999),利用循环来完成。
2. 个位、十位、百位数字的提取,利用整型数据的整除或者取余都可以完成。本例是利用整除来完成的,符合初学者的思维,算法容易接受理解。
3. 数据的验证是利用if条件来完成,需要注意的是C语言中等于是"=="。
水仙花数源程序及解释说明:
#include <stdio.h>//使用预处理命令调入标准输入输出头文件。
int main()//定义整型主函数。
{
int x,a,b,c;//定义x,a,b,c四个整型变量。
for(x=100;x<1000;x++)//外层循环,水仙花数查询范围100到999。
{
a=x/100;//利用整除提取百位上的数字。
b=(x-a*100)/10;//提取十位上的数字,(x-a*100)是将三位数变成两位数。
c=x-100*a-10*b;//提取个位上的数字。
if(x==a*a*a+b*b*b+c*c*c)//判断水仙花数的条件,注意"=="号的使用。
printf("%d\n",x);//输出水仙花数并且换行。
}
return 0;//返回主函数的值0。
}
源程序及运行结果

#include <stdio.h>
int main()
{
int x,a,b,c,d,e,f;
for(x=100;x<1000;x++)
{
a=x/100;
b=(x-a*100)/10;
c=x-100*a-10*b;
if(x==a*a*a+b*b*b+c*c*c)
printf("%d\n",x);
}
return 0;
}
-
近日,有我爱卡论坛的网友发帖称,自己信用卡的额度原来是20000,在冷冻3个月后,接到短信提醒说额度调整为2000元。对此,网友大呼,这种冷冻提额实在“太坑爹”了。据了解,原来这位网友想尝试一下“传说中”的交行冷冻提额,便打客服电话咨询,客服自称这个系统每个月会审核用户的用卡情况,进行调整,说是对长[详细]
-
问题一:万一得了大病怎么办?在人的一生中,有两个我们无法预知的突发事件:疾病和意外。如果一个人真的遭遇大病或残疾,有三笔费用是必须要面对的:医疗费、康复费、收入损失费。社保可以为你解决基本医疗费的问题,但如果得了重病,需要进口药或者复杂的手术,那就只能自费了。这是一笔巨大的开支,特别是病后的恢复。医[详细]
-
近日,吴起县人民法院成功调解了一起借贷担保纠纷。 2011年5月24日,原告张某某为好友陈某某在被告某银行处借款提供了个人担保。该笔借款期限从2011年5月24日至2014年5月22日。张某某提供担保的保证期限为借款到期之日起两年内,即从2014年5月22日至2016年5月22日。借款到期后陈[详细]
-
装修大计,水电先行,电路作为隐蔽工程,一旦发生事故,轻则全屋短路,重则引发事故。可见做好电线布局十分重要,电线不能直接埋进墙体或者地面,应该进行穿线,防止电线绝缘层受损。因此,一款好的电工套管显得十分重要。然而,市面上的电工套管琳琅满目,如何选择一款性价比高、质量过硬的电工套管成了摆在业主面前的一道[详细]
-
爱养花的朋友来自各个领域,商人也是其中之一。大部分花店都为很多商务场所和家庭提供了各种花卉盆栽。他们对花卉的挑选和摆放都有很高的要求。今天这几种很受商业人士喜爱的花,不仅好看还有好寓意!白掌白掌,也被称为“一帆风顺”,代表着万事顺利。它四季常青,不会掉叶,适合在酸性泥炭土中生长,喜欢半阴半阳的环境,[详细]