从键盘上输入一个正整数n,计算并输出n的阶乘。
例如,如果从键盘上输入8,
程序的运行结果应为:The result is: 40320。
#include
#include
#include
long fac( int n )
{ int i;
long t=1;
for( i=2;i<=n;i++)
t = t*i;
return (t);
}
main()
{ int n;
long int s;
clrscr();
printf("Enter an integer number:");
/************found************/
____(1)____;
s = fac(n);
/************found************/
printf("The result is : ____(2)____
",s);
}
例如,如果从键盘上输入8,
程序的运行结果应为:The result is: 40320。
#include
#include
#include
long fac( int n )
{ int i;
long t=1;
for( i=2;i<=n;i++)
t = t*i;
return (t);
}
main()
{ int n;
long int s;
clrscr();
printf("Enter an integer number:");
/************found************/
____(1)____;
s = fac(n);
/************found************/
printf("The result is : ____(2)____
",s);
}
举一反三
- 调用fac函数,求出1!+2!+3!…+10!,补充完整以下程序。 #include long fac(int n) //n!的定义 { int i; long t=1; for(i=2;i<=n;i++) _____①_____; return t; } void main() { int i;long sum=0; for(i=1;i<=10;i++) sum=_____②______;//调用fac()函数求解,否则不得分 printf("%ld ",sum); }
- 下面程序的功能是计算 S= 0!+1!+2!+…+k! ( k>=0 )。 #include "stdio.h" long fun(int n) { int i; long s=1; for(i=1; ① ;i++) s*=i; return( ② ); } int main() { int k,n; long s; scanf("%d",&n); s= ③ ; for(k=0;k<=n;k++) s+= ④ ; printf("%ld\n",s); return 0; }
- 调用fac函数,求出m!/(m-n)!,m和n的值随机输入,补充完整以下程序。 #include double fac(int n) //n!的定义 { int i; double t=1; for(i=2;i<=n;i++) _____①_____; return t; } void main() { int m,n; scanf("%d,%d",&m,&n); printf("%f ", _____②______); //调用fac()函数,求解m!/(m-n)!否则不得分 }
- 以下程序的功能是计算1到n的阶乘和,请填空。 long f(int n) { int i; long s; s=1; for(i=1; i <=n; i++) s=s*i; return s; } main() { long s; int k, n; scanf("%d", &n); s=0; for(k=0; k <=n; k++) s=s +_____ ;printf("%d\n",s); }
- 1.程序功能:输入n的值(n<10),计算1!+2!+3!+......+n!,并输出计算结果。 #include int main() { int i, n; long sum=0,fac=1; //fac存储每个加项(阶乘)的值 printf("请输入n的值:"); scanf("%d",&n); for( i=1; i<=n; i++) { ___________ //后一加项与前一加项的关系 sum=sum+fac; } printf("和为%ld ",sum); return 0; }