第二次作业

   作业要求 :https://edu.cnblogs.com/campus/hljkj/CS201802/homework/2292

 【第三次作业   7-4计算分段函数1】

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

 解题思路:

(1)定义变量x,y

2)利用 if 语句,若x不等于0,则y=1/x;若x等于0,则y=0

 流程图 :

错误提示 :

  查阅教材后得知,scanf(格式控制字符串,参数) 是系统提供用于输入的库函数,也在系统文件中声明

  格式控制字符串表示输入的格式,而输入参数是变量地址,变量前要加 “ & ” 

调试过程  :

当x=10时,

 

 

当x=0时,

 

 

 【第四次作业   7-1计算个人所得税】

#include <stdio.h>
int main(void)
{
  int a;
  double b;
  scanf("%d",&a);
  
  if(a <= 1600){
    b = 0 * (a - 1600);
  }
  
  else if(a >= 1600 && a <= 2500){
    b = 0.05 * (a - 1600);
  }
  
  else if(a >= 2500 && a <= 3500){
    b = 0.1 * (a - 1600);
  }
  
  else if(a >= 3500 && a <= 4500){
    b = 0.15 * (a - 1600);
  }
  
  else if(a >= 4500){
    b = 0.2 * (a - 1600);
  }
  
  printf("%.2f",b);
  system("pause");
  return 0;
}

 解题思路 :

(1)设置变量a和b,a代表工资,b代表个人所得税

(2)利用else-if实现多分支选择,求出上述五个范围内的个人所得税值

 流程图 :

错误提示 :

出现运行时错误

查阅书籍后发现,题目中要求保留两位小数,而int表示整型数据,double表示浮点数据

且比float范围要大

调试过程 :

设输入3100

 

 

 

 

 

 

 个人总结 :

(1)通过学习了if-else,else-if,for循环等语句,使得自身对c语言有了更深层次的了解,也变的更加感兴趣

         c语言其实没有想象中的那么枯燥乏味,认真积累很重要

(2)打代码时经常不细心,总是落下类似“&”这种符号

         总是分不清什么时候该用double,什么时候用float等等

         通过询问同学或上网查阅或书籍查阅得已解决,随着进一步的深入学习,程序一定会越来越复杂不会的问题一定要及时解决

 

 

 

作业点评 :

https://www.cnblogs.com/zst1/p/9912320.html

https://www.cnblogs.com/sevenG/p/9911455.html

https://www.cnblogs.com/1006cy/p/9914874.html

 

posted @ 2018-11-06 14:37  马一婧  阅读(215)  评论(8编辑  收藏  举报