第五次作业

实验一:

实验要求:

实验代码:

# include <stdio.h>
# include <stdlib.h> 
int main()
{
    int i,j,m,n;
    float sum1,sum2=0;
    printf("请输入两个正整数
");
    scanf("%d,%d",&m,&n);
    if(m<=0||n<=0||m>n)
    {
        printf("输入数据错误哦~
");
        exit(0);
    }
    else
    {
        for(i=m;i<=n;i++)
        {
            sum1=1;
            for(j=1;j<=i;j++)
            {
                sum1=sum1*j;
            }
            sum2=sum2+sum1;
        }
    }
    printf("式子的结果为%.2f",sum2);
 return 0;
}

运行结果:

实验二:

实验要求:

实验代码:

# include <stdio.h>
int main()
{
    int i,j,sum,x=0; 
    for(i=1;i<=1000;i++)
    {
        sum=0;
        for(j=1;j<i;j++)
        {
            if(i%j==0)
            {
                sum=sum+j;
            }
        }
        if(i==sum)
        {
            printf("%d ",i);
            x++;
        }
        if(x!=0&&x%10==0)
        {
            printf("
");
        }
    }
 return 0;    
}

运行结果:

实验三:

实验要求:

实验代码:

# include <stdio.h>
# include <stdlib.h>
int main()
{
    int a,b=0,i;
    printf("请输入一个正整数
");
    scanf("%d",&a);
    if(a<=0)
    {
        printf("输入数据错误哦~
");
        exit(0);
    }
    else
    {
        while(a!=1)
        {
            if(a%2==0)
            {
                a=a/2;
                b++;
            }
            else
            {
                a=a*3+1;
                b++;
            }
        }
    }
    printf("一共有%d个步骤哦
",b);
 return 0;    
}

运行结果:

实验总结:

1.第一题中,一开始运行时,当输入不合法的数据时,既输出数据错误,也输出结果为零。室友大神告诉我需要强制输出,用了exit(0)。包括第三题中也是这样。

2.第三题一开始没思路,不知道怎么下手。通过室友讲,有点明白了。。。主要的还是明白题目的意思,找规律。

原文地址:https://www.cnblogs.com/jj4529926/p/6034214.html