从键盘任意输入一个数n(0<n<=10),编程计算并输出S=1!+2!+...+n!的末6位数字(不含前导0)。若S超过6位数字,则只输出其末6位数字。若S不足6位数字,则直接输出S,不输出前导0,不输出前导0的含义是,如果末6位为001234,则只输出1234即可。如果输入的n不在1到10之间,则输出“Input error!”。
#include<stdio.h>
int Func(int n)
{
int i=1;
int j=1;
for(i=1;i<=n;i++)
{
j*=i;
}
return j;
}
int main()
{
printf("Input n:");
int n;
scanf("%d",&n);
int i=1;
int sum=0;
if(n>1&&n<=10){
for(i=1;i<=n;i++)
{
sum+=Func(i);
}
if(sum<=100000){
printf("%d",sum);
}if(sum>=100000){
sum=sum%100000;
printf("%d",sum);
}
}else{
printf("Input error!\n");
}
return 0;
}