“21天养成好习惯”第一期-11

if(如果),else(否则),else if(那么如果)的表达区别,即程序的运行规律与运行顺序

 

#include<stdio.h>
int main(){
int minute;
double kilometre,money;
scanf("%lf %d",&kilometre,&minute);
if(kilometre<=3){
money=10+minute/5*2;
  }

else if(kilometre>3&&kilometre<=10){
money=10+(kilometre-3)*2+minute/5*2;
 }
else{
money=24+(kilometre-10)*3+minute/5*2;
}
printf("%.0f",money);
}
此题的正确解的程序运行顺序为:先判断是否为kilometre<=3,再判断是否>3且<=10,最后在判断>10的情况。

但是如果不同方法用if,会造成程序运行的不同,从而造成答案的不同。

如:用此正解的

if,else if,else 表达的是顺数顺序的判断(可以有范围重叠);

如果用 if,if,if 表达的是并列顺序的判断(且范围可以有重叠部分);

if(1) if(2) else,表达的是if(1)与if(2)为并列顺序,else表式if(2)(即最近的if)的例外情况(也可以有范围重叠)。

(f中表限制的符号间(&  ||)要用()区分计算顺序与设定限制范围)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值