C语言——第四次作业

题目

题目一:计算分段函数

1.实验代码

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

2.设计思路

 ①算法

Begin

输入(double)x

IF x=0 则 y=0          //计算y=f(x)=0 (x=0)

否则 y=1/x              //计算y=f(x)=1/x (x≠0)

print x=y

end

②流程图

 

3.本题未遇到问题

题目二:A除以B

 1.实验代码

#include <stdio.h>
int main()
{
    int A,B;
    float C;
    scanf("%d %d",&A,&B);
    C=(float)A/B;
    if(B>0){
        printf("%d/%d=%.2f",A,B,C);
    }else if(B==0){
        printf("%d/%d=Error",A,B);    
    }else{
        printf("%d/(%d)=%.2f",A,B,C);
    }
return 0; }

 2.设计思路

①算法

 Begin

输入 A,B

C=A/B                                        //计算A÷B的值

IF B>0 则 print A/B=C

否则IF B=0 则 print A/B=Error

否则 print A/B=C

end 

②流程图

 

3.本题未遇到问题

题目三:阶梯电价

 1.实验代码

#include <stdio.h>
int main()
{
      int a;
      double b;
      scanf("%d",&a);
      if(a<0){
          printf("Invalid Value!");
      }else if(a>50){
          b=50*0.53+(0.53+0.05)*(a-50.00);
}else{ b=a*0.53; }

printf("cost = %.2lf",b);
return 0; }

 2.设计思路

①算法

Begin

输入 a            //a为用电量

IF a<0 则print Invalid Value!                                        //用电量小于0时,为错误的值

否则 IF a>50 则 b=50*0.53+(0.53+0.05)*(a-50.00)     //计算用电量大于50时,所花费金额

否则 b=a*0.53                    //计算用电量大于等于0、小于50时,所花费金额

print cost=b

end

②流程图

 

3.本题未遇到问题

题目四:出租车计价

1.实验代码 

#include<stdio.h>
int main()
{
    int min,m;
    double k;
    scanf("%lf %d",&k,&min);
    if(min<5){
        m=0;
    }else{
        m=min*2/5;
    }
    if(k<=3){
        m=10+m;
    }else if(k<=10){
        m=10+(k-3)*2+m;
    }else{
        m=10+14+(k-10)*3+m;
    }
    printf("%d",m);
    return 0;
}

 2.设计思路

①算法

Begin

输入 (double)k,min

IF min>5 则 m=0                            //临时停车时间小于5min时,花费金额0元

否则 m=min*2/5                              //临时停车时间大于5min时,每5分钟2元,取整

IF k<=3 则 m=10+m                       //3公里以下花费:10元,总金额为里程花费与停车花费之和

否则 IF k<=10 则m=10+(k-3)*2+m  //10公里以下花费:10+(路程-3)×2元,总金额为里程花费与停车花费之和

否则 m=10+14+(k-10)*3+m            //10公里以上花费:10+14+(路程-10)×2元,总金额为里程花费与停车花费之和

print m

end

②流程图

3.问题截图

解决方法:m不是浮点型变量,将m定义为整型变量,问题解决。

我的git地址:https://git.coding.net/dx200798/test.git

 PTA题目完成情况

本周学习总结

本周学习内容:

①本周练习了IF语句,简单学习了swith-case语句。

②学习了运算符&&与 || ,更加详细得了解了运算符的优先级。

③学习了MOOC上的部分课程,并做了简单练习。

注:经常不能对变量的类型做出准确定义,应该在这方面多做练习。

点评链接:

链接一:http://www.cnblogs.com/jsjyys/p/7709233.html

链接二:http://www.cnblogs.com/xmb1547828350/p/7719018.html

链接三:http://www.cnblogs.com/ryo-/p/7731894.html

图表

 

原文地址:https://www.cnblogs.com/dx2017/p/7726120.html