欢迎光临散文网 会员登陆 & 注册

第三章

2023-07-02 12:25 作者:bili_67945095035  | 我要投稿

3.1判断

3.1.1做判断

例:计算时间差

输入两个时间,每个时间分别输入小时和分钟的值,然后输出两个时间之间的差,也以几小时几分表示

 如果

 


3.1.2判断的条件

1、条件

计算两个值之间的关系,所以叫做关系运算



2、关系运算的结果

当两个值的关系符合关系运算符的预期时,关系运算的结果为整数1,否则为整数0


3、优先级

所有的关系运算符的优先级比算术运算的低,但是比赋值运算的高


判断是否相等的==和!=的优先级比其他的低,而连续的关系运算是从左到右进行的

3.1.3找零计算器

找零计算器需要用户做两个操作:输入购买的金额,输入支付的票面,而找零计算器则根据用户的输入做出相应的动作:计算并打印找零,或告知用户余额不足以购买。

从计算机程序的角度看,这就是意味着程序需要读用户的两个输入,然后进行一些计算和判断,最后输出结果。


注释

  • 以两个斜杠“//"开头的语句把程序分成了三个部分:

    1. 初始化

    2. 读入金额和票面

    3. 计算并打印找零

  • 延续数行的注释,要用多行注释的格式来写。多行注释由一对字符序列“/* "开始,而以“*/”结束。

也可以用于一行内的注释

3.1.4否则的话

如果在if后面还有语句,它们在if结束后会执行,无论条件如何

如果钱不够,输出你的钱不够

else  否则的话


3.1.5 if语句

一个基本的if语句由一个关键字if开头,跟上在括号里的一个表示条件的逻辑表达式,然后是一对大括号“{}”之间的若干条语句。如果表示条件的逻辑表达式的结果不是零,那么就执行后面跟着的这对大括号中的语句,否则就跳过这些语句不执行,而继续下面的其他语句。

if语句这一行结束的时候并没有表示语句结束的“;”,而后面的赋值语句写在if的下一行,并且缩进了,在这一行结束的时候有一个表示语句结束的“;”。这表明这条赋值语句是if语句的一部分,if语句拥有和控制这条赋值语句,决定它是否要被执行。

例:判断成绩

 

3.2.1嵌套的if-else

例:找出三个数中的最大

如果要求输入三个整数,输出其中最大的,应该怎么做?


 

1. 嵌套的判断


当if的条件满足或者不满足的时候要执行的语句也可以是一条if或if-else语句, 这就是嵌套的if语句

 

  1. else的匹配

  • else总是和最近的那个if匹配

  • 缩进格式不能暗示else的匹配

Tips

在if或else后面总是用{}

即使只有一条语句的时候

3.2.2级联的if-else if

1、分段函数

f(x)=-1; x<0

        0; x=0

        2x; x>0


代码:

级联的if-else if

3.2.3 if-else的常见错误

  1. 忘了大括号

    永远在if和else后面加上大括号, 即使当时后面只有一条语

  2. if后面的分号

  3. 错误使用==和=

    if只要求()里的值是零或非零

4、使人困惑的else  

  • 在if和else之后必须加上大括号形成语句块;

  • 大括号内的语句缩进一个tab的位置;

3.2.4多路分支

1、switch-case

 

  1. 控制表达式只能是整数型的结果

  2. 常量可以是常数,也可以是常数计算的表达式

  3. switch语句可以看作是一种基于计算的跳转,计算控制表达式的值后,程序会跳转到相匹配的case (分支标号)处。分支标号只是说明switch内部位置的路标,在执行完分支中的最后一条语句后,如果后面没有break,就会顺序执行到下面的case里去,直到遇到一个break,或者switch结束为止。

 

练习

成绩转换

将一个百分制成绩转换为五分制成绩,转换规则

  • 大于等于90分为A

  • 小于90分且大于等于80为B

  • 小于80分且大于等于70为C

  • 小于70分且大于等于60为D

  • 小于60为E


第三章的评论 (共 条)

分享到微博请遵守国家法律