作业要求:【https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2293】
#include<stdio.h> int main(void) { double x,y; scanf("%lf",&x); if(x != 0) { y = 1.0/x;} else y = 0; printf("f(%.1f) = %.1f ",x,y); return 0; }
解题思路
第一步:定义两个浮点型变量x,y。
第二步:输入一个浮点型变量x。
第三步:先进行判断x是否得0。如果x=0就进行第四步。如果x不等于0,就进行第五步。并得出y的结果。
第四步:x=0输出y=0。
第五步:x不等于0,就代入y = 1.0/x此方程中并输出y的结果。
流程图
调试:
输出结果:
个人总结和遇到的问题:
在本周的学习过程中我学习到了if 和else的条件语句的应用。至于在最开始的学习过程中我一直都,没有把if else 和else if的差别判断出来,导致在开始的学习时走了许多的弯路,但是在询问过同学之后,我发现;而自己的错误和不足,并加以了改正。虽说这两者有很大的差别但是在某些时候我们还是可以用这两种方法中的任意一种来求解其中的一道题。
第四次作业7-2 高速公路超速处罚
#include <stdio.h> int main() { int a,b; float c; scanf("%d%d",&a,&b); c = 100*(a-b)/(float)b; if(c<10){ printf("OK"); } else if(c>=10 && c<50){ printf("Exceed %d%%. Ticket 200",(int)(c+0.5)); } else if(c>=50){ printf("Exceed %d%%. License Revoked",(int)(c+0.5)); } return 0; }
解题思路:
第一步:定义三个整形的变量a、b、c。
第二步:输入两个整形变量a、b。
第三步:将a、b两个数值代入方程 c = 100*(a-b)/(float)b 并输出c的结果。
第四步:判断c的结果是否小于0,如果小于10的话输出OK。如果c大于10小于50的话输出 Exceed %d%%. Ticket 200 。如果c大于50的话就输出 Exceed %d%%. License Revoked 。
第五步:输出结果。
流程图
调试:
结果:
本周总结:
本周我学到了在输出的结果里怎么进行编写和运算,并且学会了else if的嵌套模式和并列的模式,在这之间遇到了些许的麻烦,类似于只会利用嵌套试来做题,但是我还是通过一些方法学到了如何去编写正确的程序,利用了else if来编写了程序。
遇到的问题和解决办法: