您的位置:首页 > 其它

第三十九讲 项目二 求三位数以内所有n=a!+b!+c!的数

2016-06-17 15:15 288 查看
任务和代码

/*
*Copyright (c)2016,CSDN学院 |  C语言及程序设计初步
*All rights reserved.
*文件名称:p39-1.c
*作    者:管运煌
*完成日期:2016年6月13日
*求三位数以内所有n=a!+b!+c!的数,a、b、c为n的个、十、百位。
*/
#include <stdio.h>
int main()
{
int a,b,c,n,sum;				//a,b,c,为n的个十百位上的数,n为三位数的数,sum为阶层和
int i,j,k,l,m,g;				//l m g 为个十百位数的阶层值。
for (n=100;n<1000;n++)		//
{
l=1;
m=1;
g=1;
sum=0;
for (i=1,a=n/100;i<=a;i++)	//百位数的阶层
{
l*=i;
}
for (j=1,b=(n/10)%10;j<=b;j++)//十位数的阶层
{
m*=j;
}
for (k=1,c=n%10;k<=c;k++)		//个位数的阶层
{
g*=k;
}
sum=l+m+g;
if (sum==n)			//判断是否相等
printf ("%d=%d!+%d!+%d!",n,a,b,c);
}
}


运行结果




知识总结


灵活运用循环嵌套,数的分离

心得体会

还是用的正常数学解题思维来做的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: