zoukankan      html  css  js  c++  java
  • 第四次作业

    题目1:计算分段函数

    实验代码:

    #include<stdio.h>
    int main ()
    {
        float x,result;
        scanf("%f",&x); 
        result = 1/x;
        if(x==0)
        printf("f(%.1f) = %.1f
    ",x,x);
        else
        printf("f(%.1f) = %.1f
    ",x,result);
        return 0;
    }

    具体算法:

    1.定义出浮点数x,并给出特定条件下结果的计算方式。

    2.假设出当x=0时,输出的值,再用else假设出x不为0时,输出的值,完成计算。

    流程图:

    调试过程遇到的问题:本题较简单,没有遇到什么困难,但在流程图的设计上没有记住各个框的意义,我会加以改正。

    题目2:A除以B

    实验代码:

    #include<stdio.h>
    int main ()
    {
        int a,b;
        float c;
        scanf("%d %d",&a,&b);
        if (b==0)
        printf("%d/%d=Error",a,b);
        else
        {
            if(b>0)
            {
                c = 1.0*a/b;
            printf("%d/%d=%.2f",a,b,c);
             } 
            else
            {
                c = 1.0*a/b;
                printf("%d/(%d)=%.2f",a,b,c);
                 
            }
         } 
         return 0 ;
    }

    具体算法:

    1.分别定义出a,b,c。

    2.先假设出当b=0时的输出方式。

    3.当b不为0时,按照特定的输出方式输出c,并给出b是否大于0时的计算方式。

    4.分别按照输出方式输出结果。

    流程图:

    调试过程:

    在计算b<0的情况时,没有将分母加上括号,导致整个代码处于半对半错的状态,更改后答案正确,截图如下:

    题目3:阶梯电价

    实验代码:

    #include<stdio.h>
    int main ()
    {
        int a;
        float b;
        scanf("%d",&a);
        if(a > 50)
        {
            b = 0.53*50+(a-50)*0.58;
        printf("cost = %.2f
    ",b);
        }
        else
        {
            if(a < 0)
            printf("Invalid Value!
    ");
            else
            b = 0.53*a;
            printf("cost = %.2f
    ",b);
        }
        return 0;
    }

    设计思路:

    1.分别定义用电量a,电价b。

    2.先假设出用电量a大于50的情况及计算方式。

    3.再将用电量a小于50的情况分为是否小于0进行讨论。

    4.输出电价b。

    流程图:

    调试过程:

    本题的困难在进行实际操作之前已听过讲解,所以调试过程未出现问题。

    题目4:出租车计价

    实验代码:

    #include<stdio.h>
    int main() 
    {
        int minutes;
        float mile,m;
        scanf("%f %d",&mile,&minutes);
        minutes=minutes/5;
        if(mile<=3)
        {
            m=10+2*minutes;
        }
        else if(mile>3&&mile<=10)
        {
            m=10+2*(mile-3)+2*minutes;
        }
        else
        {
            m=10+2*7+(mile-10)*2*1.5+2*minutes;
        }
        printf("%.0f",m);
        return 0;
    }

    设计思路:

    1.分别定义出时间数minutes和公里数miles。

    2.假设里程少于3的情况,再讨论里程数在3到10之间的情况,再讨论大于10的情况。

    3.根据计算方式分别进行计算。

    流程图:

    调试过程:

    因为这道题基本上我都没有看懂,所以大部分都来自于借鉴,在听过同学的讲解和几乎手把手的帮忙下完成了这道题。

    我的Coding仍处于问题状态,是我的错,我会在下周上c语言的课时向班主任寻求帮助并加以改正。

    本周的学习内容主要集中在if语句的使用上,我觉得我掌握的还可以,就是在读题时可能会在理解题意上出现问题,导致后续的问题及定义出现问题,我会在后续的学习中加以改正,并在休息时间多对学过的知识进行温习。

    作业点评:

    1.金海东同学的作业,http://www.cnblogs.com/jhd1127/p/7747145.html

    2.于耀凇同学的作业,http://www.cnblogs.com/kimhae/p/7747530.html

    3.金海宽同学的作业,http://www.cnblogs.com/kimhae/p/7747530.html

    本周时间表:

     以上是我的第四次作业,欢迎同学们来点评,我会及时进行改正。

  • 相关阅读:
    [HNOI2008]玩具装箱toy(dp+斜率优化)
    hdu 4597 Play Game(记忆化搜索)
    下载文件,ie文件名称乱码问题
    HDU 2138 How many prime numbers
    Codeforces Round #277 (Div. 2)---A. Calculating Function (规律)
    MapReduce-MulitipleOutputs实现自己定义输出到多个文件夹
    EFM8单片机与I2C外设通信
    linux杂谈(十一):LDAPserver的搭建
    Redis命令学习-string类型操作
    Java 实现单链表反序
  • 原文地址:https://www.cnblogs.com/jz19990201/p/7748343.html
Copyright © 2011-2022 走看看