1计算1!+2!+…+100!。要求定义和调用函数fact(n)计算n的阶乘
#include<stdio.h> double fact(int n);/*自定义函数*/ int main(void) { int i; double sum; sum=0;/*定义函数*/ /*循环结构,循环100次*/ for(i=1;i<=100;i++) sum=sum+fact(i); printf("1!+2!+...+100!=%e ",sum);/*输出sum的值*/ return 0; } double fact(int n)/*自定义函数的内容*/ { int i;/*定义变量*/ double result;/*定义变量*/ result=1;/*赋值*/ /*求阶乘的方法*/ for(i=1;i<=n;i++) result=result*i; return result;/*将结果返回给主函数*/ }
2编制程序,输入m、n(m≥n≥0)后,计算下列表达式的值并输出。 要求将计算阶乘的运算编写作函数fact(n),函数返回值的类型为float。
{ #<stdio.h> int main() { include int m,n; double fact(int x),total; printf("Enter m and n:");
scanf("%d%d",&m,&n); double a=fact(m); double b=fact(n); double c=fact(m-n); total=a/(b*c); printf("=%.2f",total); return 0; } double fact(int x) int i; double sum=1; for(i=1;i<=x;i++){ sum=sum*i;} return sum; }
#include<stdio.h> int main() { int m,n; /*定义自变量*/ double fact(int x),total;/*自定义函数*/ printf("Enter m and n:");/*提示输入m.n*/ scanf("%d%d",&m,&n); double a=fact(m); double b=fact(n); double c=fact(m-n); total=a/(b*c); printf("=%.2f",total);/*输出结果*/ return 0; } double fact(int x)/*自定义函数内容,计算阶乘的方法*/ int i;/*定义变量i*/ double sum=1;/*定义变量sum,并赋值1*/ /*循环体,计算阶乘*/ for(i=1;i<=x;i++){ sum=sum*i; } return sum;/*将结果返回给主函数*/ }