C语言简单算法之计算分段函数,A除以B,阶梯电价,出租车计价

1.题目一计算分段函数[1]

1.实验代码

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

2.设计思路
(1)第一步 先通读题目了解要打的代码的意思,y为分段函数,共有两部分,x,y均为浮点数
第二步 打出基本框架
第三步 用if-else区分y在x不同的范围内的数值
第四步 初始化定义变量浮点数x,y
第五步 运用if ,else分别定义x等于0及不等于0时y的数值
第六步 最后输出相关变量
(2)流程图(我觉得流程图一般都没有文字说明,看书上的例子除了不能用式子表示的都没有文字,作业中的例子也是如此。)

3.本题遇到的困难及解决方法
遇到的困难:开始只定义了一个浮点数值,也没有给给出输出值的相关算法就直接输出了,编译时在细节上也出了问题,浮点%f打成了%d



解决方法:通过请教会的同学,理解每个步骤的意义,自己对比,反复琢磨
4.运行结果

2.题目二A除以B

1.实验代码

#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);if (B < 0)printf("%d/(%d)=%.2f",A,B,C);if (B == 0)printf("%d/%d=Error",A,B);return 0;}

2.设计思路
(1)第一步 理解题目 ,知道A/B需要输出三种情况 ,B>0,B<0及B=0
第二步 输出结果需保留两位小数,输入的A,B值均为整数,因此定义两个整数和一个浮点数A,B和C
第三步 打出基本框架
第四步 根据要求定义用if分别写出三种不同情况,输出数值C的算法
第五步 依次输出结果
(2)流程图

3.本题遇到的困难及解决方法
遇到的困难:先定义c的算法,后初始化了,初始化时忘记打&,浮点运用错误。定义c的算法时没打double
解决的方案:流程及编译问题通过自己的观察解决,定义c的算法时打double请教了同学,开始并不知道需要打




4.运行结果


3.题目六阶梯电价

1.实验代码

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

2.设计思路
(1)第一步 理解题目,阶梯电价分三种情况,需赋两个数值,用电量及应付费用
第二步 打出基本的框架
第三步 定义用电量为整数,应付费用为浮点数
第四步 根据要求,运用if -else依次定义在给定范围内所需缴纳的电费的算法
第五步 输出每步的结果,注意浮点数的输出
(2)流程图

3.本题遇到的困难及解决方法
本道题是我7道题中唯一一个一遍对的,在pta中显示正确,c++中编译也无错误,但是运行不出结果

4.题目七出租车计价

1.实验代码

#include <stdio.h>
int main()
{int a;float b,c;scanf("%f %d",&b,&a);if(b<=3&&a<5)c=10;else if(b<=3&&a>=5)c=10+a/5*2;else if(b>3&&b<=10&&a<5)c=(b-3)*2+10;else if(b>3&&b<=10&&a>=5)c=(b-3)*2+10+a/5*2;else if(b>10&&a<5)c=24+(b-10)*3;else if(b>10&&a>=5)c=24+(b-10)*3+a/5*2;printf("%.0f",c);return 0;
}

2.设计思路
(1)第一步 阅读题目了解到计程车计费在没有停车或停车时间不超过五分钟有三种情况,加之路上有停车共有六种情况
第二步 需要定义三种变量,所行路程,停车时间,应费用定义整数a,浮点数b,c
第三步定义整数a行驶路程,浮点数b停车时间,c应付费用
第四步 运用if,else if定义出不同范围下所花的车费,给出计算车费的公式
第五步 整体输出c值
(2)流程图

3.遇到的困难及解决方法
遇到的困难:编译细节上出了点问题,对于数值的定义有些模糊,本来应该定义成浮点数,却定义成整数了,对题意的理解不透,在b c同时有条件限制时中间用了“,”,应该用“&”,我开始打的是依次输出,不如整体输出方便,也容易犯错,输出的浮点也写错。
解决的方法:自己在检查出一些错误后,让同学帮助检查,将所有的错误改正

4.运行结果


【2】pta提交列表



【3】git地址及截图
https://git.coding.net/sunna1/text.git

【4】总结、互评和学习进度
1.总结
(1)学习内容:本周主要学了算数运算顺序,%取余,float,double浮点数的运用,最主要学习了if-else的运用,在课上进行了大量的练习,本周的pta作业也以if-else为主
(2)遇到的困难:If-else的练习也不少了,大部分都大同小异,但在遇到新颖一点的题型时有的还是有些转不过来,在细节上的处理也不好,在编译时总会出现大大小小的错误,不够严谨。
(3)解决方案:天道酬勤吧,自己还是要勤加练习,要用心细心。最重要的是将每个步骤的意思弄懂,不会多查查,多看看。
2.点评作业
马雨欣:http://www.cnblogs.com/mayuxin/p/7735130.html
孙美玲:http://www.cnblogs.com/sunmeiling/p/7745182.html
何宗彦:http://www.cnblogs.com/hezongyan/p/7726382.html
3.表格及折线图


ps:评论的同学多数都提到了解决的方法写的不详细,但我并未进行整改。是因为对有些概念性的东西不太能叫得准,理解的不够透彻,导致有些错误不知所因。每次打完代码只知道错了就该过来,并没有究其根本,这是非常不对的。在接下来的学习中我会避免此类事情,追根溯源,将知识掌握扎实。本周的作业想整改,可能还需要点时间。

C语言简单算法之计算分段函数,A除以B,阶梯电价,出租车计价相关推荐

  1. C语言简单算法之高速公路超速处罚,计算油费,比较大小,两个数的简单计算器

    C语言简单算法之高速公路超速处罚,计算油费,比较大小,两个数的简单计算器 [1] 1.题目7-1高速公路超速处罚 1.实验代码 #include <stdio.h>int main() { ...

  2. C语言选择结构的嵌套:以if语句计算分段函数为例

    一.选择结构的嵌套 在选择结构中嵌入选择结构的程序结构称为选择结构的嵌套. 二.C语言实现选择结构的嵌套 下面以C语言的**if**语句实现分段函数的计算为例进行说明如何使用选择结构的嵌套. ##例: ...

  3. 计算分段函数[2](C语言)

    计算分段函数[2] (10分) 本题目要求计算下列分段函数f(x)的值: 注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂. 输入格式: 输入在一行中给出实数x. 输出 ...

  4. C语言-计算分段函数

    7-1 计算分段函数[1] (10 分) 本题目要求计算下列分段函数f(x)的值: 输入格式: 输入在一行中给出实数x. 输出格式: 在一行中按"f(x) = result"的格式 ...

  5. c语言 计算分段函数[2]

    计算分段函数[2] 本题目要求计算下列分段函数f(x)的值: 注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂. 输入格式: 输入在一行中给出实数x. 输出格式: 在一 ...

  6. python分段函数输入x的值求y的值_C语言编程题 有一分段函数如下,要求用scanf函数输入整数x的值,求y值并在屏幕上输出。有分段函数如下,编程实现输入整...

    C语言编程题 有一分段函数如下,要求用scanf函数输入整数x的值,求y值并在屏幕上输出. 有分段函数如下,编程实现输入整 www.zhiqu.org 时间: 2020-11-22 #include ...

  7. C语言简单算法之A乘以B,求整数平均值,是不是胖了,输出各位数字

    C语言简单算法之A乘以B,求整数平均值,是不胖了,输出各位数字 1.题目一:A乘以B 1.实验代码 include<stdio.h> int main() {int A,B;scanf(& ...

  8. 实验2-2-4 计算分段函数[2] (10 分)

    实验2-2-4 计算分段函数[2] (10 分) 本题目要求计算下列分段函数f(x)的值: 注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂. 输入格式: 输入在一行中 ...

  9. 实验2-2-1 计算分段函数[1] (10 分)

    实验2-2-1 计算分段函数[1] (10 分) 本题目要求计算下列分段函数f(x)的值: 输入格式: 输入在一行中给出实数x. 输出格式: 在一行中按"f(x) = result" ...

最新文章

  1. 每日一皮:你不知道你的骑手为了给你送餐要经历什么...
  2. cacls文件服务器备份与恢复,实战安全设置WEB专用服务器技巧
  3. oracle的cols,Oraclecols_as_rows比对数据
  4. DOMContentLoaded事件
  5. NOIP2007 T1奖学金 解题报告-S.B.S.
  6. 【剖析 | SOFARPC 框架】系列之 SOFARPC 注解支持剖析
  7. 简单对抗神经网络GAN实现与讲解-图片对抗
  8. Redis和Memcached区别
  9. 计算机系统盘怎么扩充,如何给电脑c盘扩容
  10. java crx,如何以编程方式创建chrome crx文件(最好在Java中)?
  11. 张艾迪(创始人):解码互联网天才
  12. ✿2021NEWCTF6.1萌新赛✿MISC-all-WP
  13. 很不错的html学习资料
  14. windows系统文件名详解
  15. Axure 团队原型创建
  16. OPPO和一点资讯牵手,手机厂商正式接管分发大权?
  17. Java输出字符串出现次数最多的字母
  18. 孔浩java爱酷网_spring mvc学习
  19. 折半搜索【p4799】[CEOI2015 Day2]世界冰球锦标赛
  20. 科比晒合影谢成龙款待 网友调侃:黑曼巴心机BOY

热门文章

  1. img srcset 和 sizes
  2. 网页动态爱心效果html和css动态效果
  3. nginx配置搭建单网站/多网站
  4. 【教程记录】使用idea操作git合并分支到主干
  5. C语言的sprintf()函数详解。
  6. 河北2008年高考分数线确定
  7. 泊松过程中各个事件持续时间之和的期望
  8. 前端小白:如何从零开始搭建Vue项目(完整步骤)
  9. 基础版贪吃蛇(C语言版本)
  10. Mat未初始化引起拼接算法结果,release版本和debug版本不一致