【实验5】函数

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\n",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;/*将结果返回给主函数*/
}

 

posted @ 2013-10-27 19:07  罗一  阅读(181)  评论(0编辑  收藏  举报