第四次作业

7-1 计算分段函数
#include <stdio.h> int main () { double x,y; scanf("%lf",&x); if(x==0) { printf("f(%.1f) = 0.0",x); }else { y = 1/x; printf("f(%.1f) = %.1f",x,y); } return 0; }

 


设计思路:

1.分别对x,y进行双精度浮点数定义,注意输入x是用%lf

2.对x等于0和x不等于0分别进行讨论

3.最后输出y的结果

流程框图:

7-2 A除于B

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

设计思路:

1.对A,B进行整型定义,C为小数,进行浮点数定义

2.为防止A/B的结果小数部分为0,对A/B进行强制性转换

3.因为C为保留两位小数,则在输出时一定要注意C对应的是%.2f

4.分别对B的不同情况进行分析,输出相应的C值

流程框图:

7-6 阶级电价

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

设计思路:

1.a为用电量,b为电费,因为电量和电费皆不一定为整数,则定义a,b为浮点数

2.因为a是浮点数,则输出时注意对应为%lf

3.对a的不同情况进行分析,输出相应的b值

流程框图:

 

7-7 出租车计价

#include <stdio.h>
int main ()
{
int b,d,e;
  double a,c;
  scanf("%lf %lf",&a,&c);
  if(a>13)
  {
    b = 24+3*(a-10);
  }else if(a>3)
  {
    b = 2*a+4;
  }else
  {
    b = 10;
  }
  if(c<5)
  {
    d = 0;
  }else
  {
    d = c*0.4;
  }
  e = (b+d+0.5);
  printf("%d",e);
}

设计思路:

1.a为里程数,b为里程数对应的车费,c为停车时间,d为停车时间对应应付的钱数,e为总车费

2.因为里程数和停车时间有可能都为小数,所以将之定义为双精度浮点数

3.输出不同情况对应的e的值

流程框图

7-6

我的Git地址:https://git.coding.net/exo07/disizhouzuoye.git

上传代码截图:

把if ,else if,else的关系弄混,最后弄清楚else if 和else是在第一个if括号下的

总结:本周主要学习了if语句,扩展到else if等,总是将else if ,else,if三者的关系弄混,最后查阅了书籍,研究了几个事例,大致明白了其中的关系,else if的范围是它自身括号后的范围是去掉if括号后的范围,并且是在if这个大括号下的

董欣 http://www.cnblogs.com/dx2017/p/7726120.html

于耀淞http://www.cnblogs.com/jsjyys/

徐铭博http://www.cnblogs.com/xmb1547828350/p/7719018.html

posted @ 2017-10-27 22:14  董雅洁  阅读(298)  评论(6编辑  收藏  举报