第二次作业

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

第三次作业 7-7 计算火车运行时间

1.实验代码

 1 #include 
 2 int main(){
 3   int x,y,h,m;
 4   scanf("%d %d",&x,&y);
 5   h=y/100-x/100;
 6   m=y%100-x%100;
 7   if (m<0){
 8     h=h-1;m=m+60;
 9   }
10   else {
11     h=h;m=m;
12   }
13   printf("%02d:%02d",h,m);
14   return 0;
15 }

2.设计思路

第一步:先通读一下题,了解题的大概意思。然后再仔细的阅读题目的具体要求。

第二步:注意细节,其中题目要求输入2个4位正整数,而且其中间要用空格隔开,通过读题了解到,这个程序需要使用if else语句来解决。

第三步:整理自己的思路,需要将结果分成两部分,一部分小时,一部分分钟,先设出两个四位数a,b结果的两部分分别设为h,m。想要分成两部分就需要/和%两个除法取整和取余来解决。

流程图

第二次作业_第1张图片

3. 本题了事的过程及解决方法

在刚刚看到这道题的时候,我认为很简单,只需要将输入的两个数相减就可以了,但仔细思考后,发现这是不对的,因为单纯地相减并不能得到想要的答案,小时和分钟是两个部分,需要分开来算,之后再同学的指点下,了解到需要用%和/两种除法来计算,将两个四位数字通过取整和取余区分开,分别来计算,同时也要考虑到小时和分钟的进位情况。如果当分钟相减为负数时,就说明不满足一小时,所以就需要在h上减去1,同时在分钟m上加60。

第二次作业_第2张图片

同事在输出过程中也遇到了问题,在要求下,输出时需要四位数,格式是hh:mm,第一次我的输出是这样的 printf("%d:%d",h,m);结果就是这样第二次作业_第3张图片

只有三位数字,过来通过网上查询,找到了问题所在,这中间存在借位的情况所以在输出的时候应这样打printf("%02d:%02d",h,m);。在%与d之间加上02,02的意思是借两位,同事空位用0来代替。

调试过程

第二次作业_第4张图片

第二次作业_第5张图片

第二次作业_第6张图片

第二次作业_第7张图片

第四次作业 7-3 出租车计价

1.实验代码

#include 
#include 
int main (){
  float x,y;
  int z,a;
  scanf("%f %f",&x,&y);
  a=y*2/5;
  if(y<5&&x<3){
    z=10;}
    else if(y>=5&&x<=3){
      z=y*2.0/5.0+10;}
  if(y<5&&x>3&&x<=10){
    z=(x-3)*2.0+10;}
    else if (y>=5&&x>3&&x<=10){
      z=10+y*2.0/5.0+(x-3.0)*2.0;}
  if (y>=5&&x>10){
    z=a+24+(x-10)*3.0;}
    else if (y<5&&x>10){
      z=24+(x-10)*3.0;}
  printf("%d",z);
  return 0;
}

2.解题思路

第一步:读题,了解到这道题的主要大意是要计算车费,不同的路程区间,有不同的收费标准,同事还有额外的停车时间另计费。

第二步:这道题需要用到if条件语句,else if语句更为简单。

第三步:捋顺题目,区间一共有3个,一开始我认为是两部分,超过初始部分每公里2元和超过10公里部分3元每公里。其实不然,1到3是起步费10元,3到10是每公里2元,10到13一直往后是3元每公里,还要看乘客是否要求停车,时间是否超过5分钟,或超过多少个5分钟。计算有多少个5分钟可以通过/,通过取整的方法知道有多少个5分钟,余数相当于不满的5分钟就舍去了。

流程图

第二次作业_第8张图片

3.调试过程及问题

调试的过程没有什么问题

第二次作业_第9张图片

第二次作业_第10张图片

第二次作业_第11张图片

第二次作业_第12张图片

4.个人总结

1.在本周的学习过程中,我遇到过一些问题,在写程序的时候有一些点一直都不会,在一个问题上能纠结上好长时间,在这周我学会了if else条件语句还有else if,通过做题知道了借位的方法,在比较大小的那道题中,我也学会了一种新的思维方式,解题思路。

2.在本周的学习过程中,我在一开始if else和else if的使用上不是很熟悉,else对应哪个if还找不准,通过上网自己查找资料,询问同学,和室友一起讨论,让我能快速的理解学习的内容,消化掉上课时的内容,以及不太懂得部分。

  第一周 第二周 第三周
博客园字数 1200 0 1000
代码数 100 150 300

 

 

 

第二次作业_第13张图片

作业点评

https://www.cnblogs.com/xiaofengqaq/p/9845665.html

http://www.cnblogs.com/chumengGTRlhz/p/9885207.html

http://www.cnblogs.com/xuhuanqi/p/9906653.html

 

你可能感兴趣的:(第二次作业)