第四周作业
2017-10-28 19:16 金海宽 阅读(193) 评论(10) 编辑 收藏 举报***PTA***
题目7-1 计算分段函数
1.实验代码
#include<stdio.h> int main() { float x,y; scanf("%f",&x); if(x==0) { y=0; } else { y=1/x; } printf("f(%.1f) = %.1f",x,y); return 0; }
2. 设计思路
第一步:定义x和y。
第二步:设置if语句,如果x==0,那么y=0;else y=1/x。
第三步:编译运行代码,结束。
3.流程图
4.问题及解决方法
把if后的条件写错,将0赋值给x(x=0),而不是x等于0(x==0);在if(x=0)中x后再加一个等号。
题目7-2 A除以B
1.实验代码
#include<stdio.h> int main() { int A,B; float c; scanf("%d %d",&A,&B); if(B==0) { printf("%d/%d=Error",A,B); } else if(B>0) { c=1.0*A/B; printf("%d/%d=%.2f",A,B,c); } else { c=1.0*A/B; printf("%d/(%d)=%.2f",A,B,c); } return 0; }
2. 设计思路
第一步:定义A,B,c。
第二步:根据题目条件设置if-else if-else框架。
第三步:编译运行代码,结束。
3.流程图
4.问题及解决方法
因为有了上一道题的经验,所以在解这道题的过程很流畅,没有问题。
题目7-6 阶梯电价
1.实验代码
#include<stdio.h> int main() { float x,y; scanf("%f",&x); if(x>=0&&x<=50) { y=0.53*x; printf("cost = %.2f",y); } else if(x>50) { y=0.53*50+0.58*(x-50); printf("cost = %.2f",y); } else { printf("Invalid Value!"); } return 0; }
2.设计思路
第一步:定义x,y;
第二步:根据题意设置if-else if-else框架。
第三步:编译运行,结束
3.流程图
4.问题及解决方案
此题与7-2题大同小异,做题过程依然很流畅。
题目7-7 出租车计价
1.实验代码
#include<stdio.h> int main() { int minutes; float mile,m; scanf("%f %d",&mile,&minutes); minutes=minutes/5; if(mile<=3) { m=10+2*minutes; } else if(mile>3&&mile<=10) { m=10+2*(mile-3)+2*minutes; } else { m=10+2*7+(mile-10)*2*1.5+2*minutes; } printf("%.0f",m); return 0; }
2.设计思路
此题和7-6 阶梯电价7-7 出租车计价的解题思路是一样的。
3.流程图
4.问题及解决方法
在数据类型上出了错,改了一下,问题不大。
---恢复内容结束---
***PTA***
题目7-1 计算分段函数
1.实验代码
#include<stdio.h> int main() { float x,y; scanf("%f",&x); if(x==0) { y=0; } else { y=1/x; } printf("f(%.1f) = %.1f",x,y); return 0; }
2. 设计思路
第一步:定义x和y。
第二步:设置if语句,如果x==0,那么y=0;else y=1/x。
第三步:编译运行代码,结束。
3.流程图
4.问题及解决方法
把if后的条件写错,将0赋值给x(x=0),而不是x等于0(x==0);在if(x=0)中x后再加一个等号。
题目7-2 A除以B
1.实验代码
#include<stdio.h> int main() { int A,B; float c; scanf("%d %d",&A,&B); if(B==0) { printf("%d/%d=Error",A,B); } else if(B>0) { c=1.0*A/B; printf("%d/%d=%.2f",A,B,c); } else { c=1.0*A/B; printf("%d/(%d)=%.2f",A,B,c); } return 0; }
2. 设计思路
第一步:定义A,B,c。
第二步:根据题目条件设置if-else if-else框架。
第三步:编译运行代码,结束。
3.流程图
4.问题及解决方法
因为有了上一道题的经验,所以在解这道题的过程很流畅,没有问题。
题目7-6 阶梯电价
1.实验代码
#include<stdio.h> int main() { float x,y; scanf("%f",&x); if(x>=0&&x<=50) { y=0.53*x; printf("cost = %.2f",y); } else if(x>50) { y=0.53*50+0.58*(x-50); printf("cost = %.2f",y); } else { printf("Invalid Value!"); } return 0; }
2.设计思路
第一步:定义x,y;
第二步:根据题意设置if-else if-else框架。
第三步:编译运行,结束
3.流程图
4.问题及解决方案
此题与7-2题大同小异,做题过程依然很流畅。
题目7-7 出租车计价
1.实验代码
#include<stdio.h> int main() { int minutes; float mile,m; scanf("%f %d",&mile,&minutes); minutes=minutes/5; if(mile<=3) { m=10+2*minutes; } else if(mile>3&&mile<=10) { m=10+2*(mile-3)+2*minutes; } else { m=10+2*7+(mile-10)*2*1.5+2*minutes; } printf("%.0f",m); return 0; }
2.设计思路
此题和7-6 阶梯电价7-7 出租车计价的解题思路是一样的。
3.流程图
4.问题及解决方法
在数据类型上出了错,改了一下,问题不大。
***GIT***
GIT地址:https://git.coding.net/kimhae/test.git
***学习进度***
***点评***
http://www.cnblogs.com/jsjyys/p/7709233.html
http://www.cnblogs.com/zgq947/p/7746392.html
http://www.cnblogs.com/jhd1127/p/7747145.html