1 计算阶乘的和v2.0(4分)
题目内容:
假设有这样一个三位数m,其百位、十位和个位数字分别是a、b、c,如果m= a!+b!+c!,则这个三位数就称为三位阶乘和数(约定0!=1)。请编程计算并输出所有的三位阶乘和数。
函数原型: long Fact(int n);
函数功能:计算n的阶乘
输入格式: 无
输出格式:"%d\n"
为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。
时间限制:500ms内存限制:32000kb
程序:
#include <stdio.h>
long Fact(int n);
int main()
{
int a, b, c, n, m;
for(a=0;a<10;a++)
{
for(b=1;b<10;b++)
{
for(c=1;c<10;c++)
{
n = Fact(a) + Fact(b) + Fact(c);
m = a * 100 + b * 10 + c;
if (n == m)
printf("%d\n",m);
}
}
}
return 0;
}
long Fact(int n)
{
int i;
int j=1;
for(i=1;i<=n;i++)
j = j * i;
return j;
}
2 计算最大的三位约数(4分)
题目内容:
从键盘任意输入一个数n(1000<=n<=1000000),编程计算并输出n的所有约数中最大的三位数(即最大的三位约数)。如果n小于1000或者大于1000000,则输出“Input error!”。
函数原型:int Func(int n);