• 第四周作业


    ***PTA***

    题目7-1 计算分段函数

    1.实验代码

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

    2. 设计思路

    第一步:定义x和y。

    第二步:设置if语句,如果x==0,那么y=0;else y=1/x。

    第三步:编译运行代码,结束。

    3.流程图

    4.问题及解决方法

    把if后的条件写错,将0赋值给x(x=0),而不是x等于0(x==0);在if(x=0)中x后再加一个等号。

    题目7-2 A除以B

    1.实验代码

    #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;
    }

    2. 设计思路

    第一步:定义A,B,c。

    第二步:根据题目条件设置if-else if-else框架。

    第三步:编译运行代码,结束。

    3.流程图

    4.问题及解决方法

    因为有了上一道题的经验,所以在解这道题的过程很流畅,没有问题。

    题目7-6 阶梯电价

    1.实验代码

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

    2.设计思路

    第一步:定义x,y;

    第二步:根据题意设置if-else if-else框架。

    第三步:编译运行,结束

    3.流程图

    4.问题及解决方案

    此题与7-2题大同小异,做题过程依然很流畅。

    题目7-7 出租车计价

    1.实验代码

    #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;
    }

    2.设计思路

    此题和7-6 阶梯电价7-7 出租车计价的解题思路是一样的。

    3.流程图

     4.问题及解决方法

    在数据类型上出了错,改了一下,问题不大。

    ---恢复内容结束---

    ***PTA***

    题目7-1 计算分段函数

    1.实验代码

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

    2. 设计思路

    第一步:定义x和y。

    第二步:设置if语句,如果x==0,那么y=0;else y=1/x。

    第三步:编译运行代码,结束。

    3.流程图

    4.问题及解决方法

    把if后的条件写错,将0赋值给x(x=0),而不是x等于0(x==0);在if(x=0)中x后再加一个等号。

    题目7-2 A除以B

    1.实验代码

    #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;
    }

    2. 设计思路

    第一步:定义A,B,c。

    第二步:根据题目条件设置if-else if-else框架。

    第三步:编译运行代码,结束。

    3.流程图

    4.问题及解决方法

    因为有了上一道题的经验,所以在解这道题的过程很流畅,没有问题。

    题目7-6 阶梯电价

    1.实验代码

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

    2.设计思路

    第一步:定义x,y;

    第二步:根据题意设置if-else if-else框架。

    第三步:编译运行,结束

    3.流程图

    4.问题及解决方案

    此题与7-2题大同小异,做题过程依然很流畅。

    题目7-7 出租车计价

    1.实验代码

    #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;
    }

    2.设计思路

    此题和7-6 阶梯电价7-7 出租车计价的解题思路是一样的。

    3.流程图

     4.问题及解决方法

    在数据类型上出了错,改了一下,问题不大。

    ***GIT***

    GIT地址:https://git.coding.net/kimhae/test.git

    ***学习进度***

     ***点评***

    http://www.cnblogs.com/jsjyys/p/7709233.html

    http://www.cnblogs.com/zgq947/p/7746392.html

    http://www.cnblogs.com/jhd1127/p/7747145.html

  • 相关阅读:
    复利计算器2.01
    复利计算器2.0
    0429团队3.0
    0428 团队项目合作2.0作业
    "数学口袋精灵"bug
    操作系统-实验2
    博客评论
    复利计算升级
    0408 结对合作
    0406复利计算5.0
  • 原文地址:https://www.cnblogs.com/kimhae/p/7747530.html
Copyright © 2020-2023  润新知