实验5

1.

#include<stdio.h>
double fact(int n);
int main(void)
{
    int i;
    double sum;
    sum=0;
    for(i=1;i<=100;i++)
        sum=sum+fact(i);
    printf("1!+2!+…+100!=%e
",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.

#include<stdio.h>
int main(void)
{
    int m,n;
    float result,sum;
    float fact(int n);

    printf("Enter m,n:");
    scanf("%d%d",&m,&n);

    sum=fact(m-n);
    result=fact(m)/(fact(n)*sum);
    printf("result=%.0f
",result);

    return 0;
}
float fact(int n)
{
    int i;
    float result;
    result=1;
    for(i=1;i<=n;i++){
        result=result*i;
    }
    return result;
}

3

错误代码,还有错误,下面判断素数是照着书上96页打的,可能自己表达有点问题,无法用程序恰当地表现出来。运行时候显示还有两个错误,还有两个warnings。我准备把错误的放着了,到时候弄懂了自己修改好。希望老师指导下。

#include<stdio.h>
#include<math.h>
int main( )
{
    int m,n,sum,x;
    int prime(int x);

 sum=0;
 
 for(x=m;x<=n;x++)
        if(prime(x)!=0){
            printf("%d",x);
            sum=sum+x;
   scanf("%d",sum);
  }
}

int prime(int x)
{
    int i,n;
    if(x==1)  return 0;
    n=sqrt(x);
    for(i=m;i<=n,i++)
        if(x%i==0){
            return 0;
        }
        return 1;
}

4.

#include<stdio.h>
#include<math.h>
int main(void)
{
    int m,n,x,y;
    int prime(int m,n);

    for(x=3;x<=50;x++){

5.

原文地址:https://www.cnblogs.com/sally959/p/3379993.html