第四周作业

一.(1)7-1 计算分段函数[1]

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

(2)算法:第一步设a为双精度浮点数
第二步输入a
第三步分a等于零或不等于零分别输出
(3)

(4)未遇到调试问题
二(1)题目7-2 A除以B

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

(2)算法:第一步定义a,b。
第二步输入a
第三步现根据b等不等于零进行输出,再根据b大于零和小于零输出。
(3)
(4)

忘记在a/b时乘以一个浮点数,导致直接结果按整数处理。
三(1)题目7-6 阶梯电价

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

(2)算法:第一步定义a为浮点数
第二步输入a,根据电费是否大于零进行下一步
第三步计算是否超出进行输出
(3)

(4)无调试问题
四(1)题目7-7 出租车计价

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

(2)第一步定义要输入的数
第二步根据所给数据进行赋值
第三步根据所给条件分别输出
(3)

(4)

我把且(&&)打成或(||)了

总结:本周我们学习了if语句,运算关系和一些运算符,这些对于我们来说不是特别的难,但是如果没有更多的练习的话,在做题的时候也会犯很多的小错误,我们对于一些细节要重视起来,这样才能更高的减少错误的概率。

posted @ 2017-10-29 05:23  杨志群  阅读(158)  评论(3编辑  收藏  举报