标签:题意 经验值 html 经验 else highlight 运用 浮点 2-2
要求一:
#include <stdio.h> int main() { float a,b; scanf("%f",&a); if(a!=0) { b = 1.0*1/a; printf("f(%.1f) = %.1f",a,b); } else { printf("f(%.1f) = 0.0",a,b); } return 0; }
2. 设计思路
此题按照题目要求,运用一个if语句即可。
3. 流程图
4.问题及解决方案
此题仅用一个if语句,较简单,只要注意输出格式及小数点后数字位数,基本无问题。
#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; }
用if判断分母的范围,根据题意输出,由于要输出带小数的数,运算是两个整形的运算,应将其转换为浮点数和整数的运算。
3.流程图
4.问题及解决方案
问题:输出的答案与实际答案不符
解决方案:将其变为浮点型
#include <stdio.h> int main() { float a,b; scanf("%f",&a); if (a<0) { printf("Invalid Value!"); } else if(a>=0&&a<=50) { b = 0.53*a; printf("cost = %.2f",b); } else { b = 0.53*50+(0.53+0.05)*(a-50); printf("cost = %.2f",b); } return 0; }
判断用电量所处的价格范围,按照相应的公式进行计算。
3.流程图
4.问题及解决方案
此题无问题,但要注意阶梯电价的范围是否包含边界值
#include <stdio.h> int main() { float a,c; int b,d,e; scanf("%f %d",&a,&b); d=b/5; if(a<=3) c=10; else if(a<=10) c=10+(a-3)*2; else c=24+(a-10)*3; e=c+d*2+0.5; printf("%d",e); return 0; }
需要判断公里数所处的价格范围并计算相应的价格。
3.流程图
4.遇到问题及解决方案
问题:四舍五入的问题
解决方案:使用结果+0.5的方式来解决四舍五入的问题
要求三:
git地址:
https://git.coding.net/haidongaa/test.git
1.总结
本周学习了if语句,要注意if后的范围是否包含边界值
遇到的问题是总忘记用浮点数,多次联系后解决了这个问题。
2.
3.作业点评
http://www.cnblogs.com/jsjyys/p/7709233.html
http://www.cnblogs.com/jsjyys/p/7709233.html
http://www.cnblogs.com/zgq947/p/7746392.html
标签:题意 经验值 html 经验 else highlight 运用 浮点 2-2
原文地址:http://www.cnblogs.com/jhd1127/p/7747145.html