/*
*Copyright (c) 2014,烟台大学计算机学院
*All rights reserved.
*文件名称:first.cpp
*作者:刘天恩
*完成时间:2014年11月10号
*版本号:v1.0
*问题描述:输出一个三位数,使其个十百位数的阶乘和等于这个三位数
*输入描述:无
*程序输出:输出一个三位数,使其个十百位数的阶乘和等于这个三位数
*/
using namespace std;
long fac(int n);
int main()
{
int m,n,z,sum;
cout<<"特殊的三位数是:";
for(int a=100;a<1000;a++)
{
n=a/100;
m=(a%100)/10;
z=a%10;
sum=fac(n)+fac(m)+fac(z);
if(sum==a)
cout<<a<<endl;
}
return 0;
}
long fac(int n)
{
int f=1;
for(int i=1;i<=n;i++)
f=f*i;
return f;
}
运行结果:
学习心得:运行之前观察一遍程序,出错的地方单步执行一下。养成独立完成,独立思考的习惯。