下列切入点表达式错误的是_7、逻辑表达式和条件表达式

d93d753d9a53c779be90369a1a33da92.png

示例3.8:

b3a18d2cce99b23de3b72c0c3e95a470.png

应该就是输入两科成绩,判断数学也判断语文,都成立才先进。

注意,实际不能向下面这样写,这是个错误练习,虽然结果看着没问题:

//practice 3.8

8a506b0c10b34564bcd072ec650fd48b.png

e77949e43ec1fa96318c309f0bd8f6c3.png

虽然结果是可以的,但是姐姐说不能用& ,这是按位与,逻辑上是不对的。

书上给出的答案:

//exam 3.8

c44806e358baa2254f3863caf672cfdc.png

960e29f44df203649ac088f455406205.png

书上给出的用了cmath 然后中间连接符用的是两个&,也许这又是c++ 和py的不同吧,继续看看:

1、逻辑运算和逻辑表达式

逻辑运算符:

逻辑与逻辑或逻辑非&&||!

优先级别:

5a989dc20ea8df46910cd9981757a3ac.png

定义:

将两个关系表达式用逻辑运算符连接起来的表达式,称为逻辑表达式。

一般形式:

表达式 逻辑运算符 表达式

示例3.9:

根据问题写出条件表达式:

问题条件表达式判断一个数n是否可以同时被2与3整除if (n%2==0 && n%3==0);判断一个数x是否在区间[1,5]之内if (n>=1 && n<=5);判断一个数x是否等于0if (x==0);

书上给出的:最后一个还蛮有意思的:

问题条件表达式d>判断一个数n是否可以同时被2与3整除d>if (n%2==0 && n%3==0); 或者 if(n%6==0)判断一个数x是否在区间[1,5]之内if (n>=1 && n<=5); 或者if(!(x<1||x>5))判断一个数x是否等于0正向判断 if (x==0); 反向判断 if(x!=0) 或者 if(!x) 问题条件表达式判断一个数n是否可以同时被2与3整除if (n%2==0 && n%3==0); 或者 if(n%6==0)判断一个数x是否在区间[1,5]之内if (n>=1 && n<=5); 或者if(!(x<1||x>5))判断一个数x是否等于0正向判断 if (x==0); 反向判断 if(x!=0) 或者 if(!x)

示例3.10:

输入年份year,输出该年是否是闰年。

闰年的条件是:年份能被4整除但不能被100整除或者能被400整除。

//practice 3.10

00714d578f86183182cbcd2385d523f2.png

0c9c7795228fb88ea6f7595008dbeef3.png

哇!第一次和书上的代码一模一样诶!!! 开心!

示例3.11:

2de966fcf2269bbd612145db45a0e5ec.png

这个前面有过类似的,但是没判断输入的能不能组成三角形:

任意两边之和大于第三边那就能组成。

//practice 3.11

008c184b8bba4761dc24d6ee37c5d67b.png

3e93b18eb260fa787fdf6bd5803097a3.png

道理上是没错,结果也是可以的,但是尽量把求面积和半径写在里面,因为判断完是才计算更好,我这样写就是不管行不行,咱先计算。。。没必要。

建议,书上这么写的:

//exam 3.11

别忘了是大括号括起来

2、逻辑变量

定义:

逻辑变量用类型标识符bool来定义,它的值只有true 或false两种。

由于逻辑变量是用bool来定义的,因此又称布尔变量

false处理为0;true处理为1

如果将一个非0整数赋值给逻辑变量,则按”真“处理。

3、条件表达式

格式:

<表达式1>?<表达式2>:<表达式3>

概念:

条件表达式要求有3个操作对象,?和: 一起出现在条件表达式中,称三目(元)运算符,它是C++中唯一的一个三目运算符。

规则:

bd87c1d049dc1f32f158bca17162dfb4.png

示例3.13:

解释下列条件表达式的作用:

条件表达式作用int maxn=(a>b)?a:ba和b中较大的数赋值给ncout<<((num%2==0?"num is even": "num is odd")<<endl;num是偶数就输出even,反之是oddy=(x>0)?1:-1;x是正数,1赋值给y,反之,-1赋值给y

示例3.14:

e10ab5960895e3c58b4dbf41663cbc32.png
//practice 3.14

不会写了。。。 三元运算符看着好厉害,也可以读懂,但就是。。自己写起来。。。好难

这个好有趣要多思考啊~

看看书上咋写的吧:

要分析,满足的条件是啥:当满足条件ch>='A'&ch<='Z'时为大写字母,将它转换为小写字母,大写字母ASCII码加32即是小写字母。

//exam 3.14

642118a6db7d8225af647cc09f6a20c1.png

21c2d884d51bda6aaf1f641546a2652d.png

8ad128b1bcda39289daf97eb0ac5b1ae.png

作业:

1、

88c9bfd3672044175d6c73536b1c39c1.png
#include 

7ffeed0238d2dcd35d863085c724260f.png

c58cf3f696dc24e67cfd867135bb00d5.png

4f30639d9094880472eff484355a914b.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值