zoukankan      html  css  js  c++  java
  • 作业

    一、实验内容

    实验一

    实验要求:输入两个正数m和n(要求m<=n),求m!+(m+1)!+(m+2)!...+n!

    代码:

     include <stdio.h>
    int main()
    {
        int m,n,i;
        float sum,p;
        printf("请输入两个整数
    ");
        scanf("%d,%d",&m,&n);
        sum=0;
        if(m<=n)
        {
           for(m;m<=n;m++)
           {
               p=1;
               for(i=1;i<=m;i++)
               {
                    p=p*i;
               }
            sum=p+sum;
           }
        }
        else
        {
            printf("数据错误
    ");
        }
        printf("sum=%.0f
    ",sum);
    }

    程序运行结果:

    实验二

    实验要求:输出1000以内的所有完数。所谓完数是指这个数恰好等于除它本身外的所有因子之和。例:6的因子为1,2,3,6=1+2+3,所以6是完数。

    代码:

    # include <stdio.h>
    int main()
    {
        int m,i,sum;
        for(i=2;i<1000;i=i+1)
        {
            sum=1;
            for(m=2;m<i;m=m+1)
            {
                if(i%m==0)
                {
                    sum=sum+m;
                }
            }
            if(sum==i)
            {
                printf("%03d ",i);
            }
        }
        return 0;
    } 

    程序运行结果:

    实验三

    实验要求:奇偶归一猜想--对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它初一2,如此循环,最终都能得到1.如n=11,得序列:11,34,17,52,26,13,40,10,5,16,8,4,2,1.(共有14个步骤)题目输入正整数n求这个n多少步能归一。

    代码:

    # include<stdio.h>
    int main()
    {
        int m,sum;
        printf("请输入一个正整数
    ");
        scanf("%d",&m);
        sum=0;
        while(1)
        {
            if(m==1) 
            {             
                break; 
            }
            else if(m%2!=0)
            {
                m=3*m+1;
                sum=sum+1;
            }
             else if(m%2==0)
            {
                m=m/2;
                sum=sum+1;
            }
               }
        printf("这个数%d步能归一
    ",sum);
        return 0;
    }

    程序运行结果:

    二、实验总结

    1. 循环之间的嵌套。
    2. while,do...while,for语句的熟练掌握。
    3. 在while后面不能加分号,在do...while的while后面要加分号。
    4. 对死循环的应用。
    5. 在两个循环的嵌套中外层循环控制外层函数,内层循环控制内层函数。
    6. 在循环中break应该在if后面,不能跟在else if后面。
    7. 完数的计算中sum的初值应为1。
  • 相关阅读:
    bite one's tongue
    你以为你以为的教育是教育吗?[转]
    使用ngnix通过uwsgi app容器部署django项目
    使用ngnix通过uwsgi app容器部署django项目
    vue作为前端的静态代码与后端融合
    linux下的下载器软件
    git的gui client终端
    java 查找bug的工具 SpotBugs 和 Findbugs
    awesome c, awesome c++
    加密货币即时交换平台 Changelly vs ShapeShift vs CoinSwitch vs ChangeNOW
  • 原文地址:https://www.cnblogs.com/1997zjx/p/6023738.html
Copyright © 2011-2022 走看看