【C语言基础考研向】06运算符与表达式

本文介绍了C语言中的运算符分类,包括算术运算符、关系运算符、逻辑运算符等,强调了运算级优先级,以及如何正确使用关系表达式和避免常见编程误区。课后习题涉及运算符优先级和正确编写条件语句。
摘要由CSDN通过智能技术生成

文章目录
1.运算符分类
2.算术运算符及表达式
3.关系运算符与关系表达式
4.c语言运算级优先级表
课后习题自测


1.运算符分类

语言提供了13种类型的运算符,如下所示.

(1)算术运算符(+ - * / %) .
(2)关系运算符(>< == >=<= l=) .
(3)逻辑运算符(l && ll) .

(4)位运算符(<< >> ~ I ^ &).
(5)赋值运算符(=及其扩展赋值运算符).
(6)条件运算符(?和:)
(7)逗号运算符(,)
(8)指针运算符(*和&)—讲指针时讲解
(9)求字节数运算符(sizeof) .
(10)强制类型转换运算符((类型)).

(11)分量运算符(. - >) .—讲结构体时讲解
(12)下标运算符([ ]) . ----讲数组时讲解
(13)其他(如函数调用运算符() ). —讲函数时讲解


2.算术运算符及表达式

算术运算符包含+、一、、/和%,当一个表达式中同时出现这5种运算符时,先进行乘()、除(/)、取余(%),取余也称取模,后进行加(+)、减(-),也就是乘、除、取余运算符的优先级高于加、减运算符.

只有的情况:
(1) %运算符只适用于整形数

#举例
10%3=3
6%4=1

(2) / 运算时,只有两边的操作数都是整型的情况下,才执行整除运算,其他情况下执行浮点型数除法。

算术表达式:
由算术运算符组成的式子称为算术表达式,表达式一定有一个值。


3.关系运算符与关系表达式

关系运算符

关系运算符>、<、= =、>=、<=、!=依次为大于、小于、是否等于、大于等于、小于等于和不等于。

关系表达式

由关系运算符组成的表达式称为关系表达式。关系表达式的值只有真和假,对应的值为1和0。由于C语言中没有布尔类型,所以在C语言中0值代表假,非0值即为真。

例如,关系表达式3>4为假,因此整体值为0,而关系表达式5>2为真,因此整体值为1。关系运算符的优先级低于算术运算符,运算符的优先级的详细情况见最后。

在工作中,很多程序员容易不小心将两个等号写成一个等号,因此当判断整型变量i是否等于3时,我们可以写为3= =i,即把常量写在前面而把变量写在后面。这是因为当不小心将两个等号写为一个等号时,变量在前面就会导致编译不通,从而快速发现错误〈这种写法属于华为公司内部的一条编程规范)。

同时,在编写程序时,如果我们需要判断三个数是否相等,那么绝对不可以写为if(5= =5= =5),这种写法的值无论何时都为假,为什么?因为首先5= =5得到的结果为1,,然后1= =5得到的结果为0。如果要判断三个变量a、 b、c是否相等,那么不能写为a= =b= =c,而应写为a= =b &&b= =c。


4.c语言运算级优先级表

在这里插入图片描述
在这里插入图片描述

注意:

结合方向要注意,优先级2和14和条件运算符的结合方向是从右到左的

课后习题自测

1.算术运算符包含+、-、*、/和%,乘、除、取余运算符的优先级高于加、减运算符
A.正确 B.错误

答案
A

2.%取余(也称为取模运算)可以用于浮点数
A正确 B错误

答案:B
解释:取模运算只能用于整型数,不能用于浮点数

3.关系运算符的优先级高于算术运算符A正确B错误
答案:B
解释:关系运算符优先级是低于算术运算符的,记住这个对于初试大题编写是必须的

4.代码编写int a=5; if(3<a<10)这种编写方式是否正确
A 正确 B错误

答案:B
解释:在程序中是错误的.首先,无论a是大于3还是小于3,对于3<a这个表达式只有1或O两种结果.由于1和0都是小于10的,所以无论a的值为多少,这个表达式的值始终为真,因此在判断变量a是否大于3且同时小于10时,要写成a>3&& a<10,这才是正确的写法.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小徐要考研

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值