【C语言督学训练营 第三天】C语言的运算符与表达式
创始人
2024-06-02 14:36:03
0

文章目录

  • 运算符分类
    • 1.算术运算符
    • 2.关系运算符
    • 3.逻辑运算符与逻辑表达式
    • 4.其余运算符
  • 运算符的优先级

运算符分类

总体可以认为运算符分为以下几类:算术运算符、关系运算符、逻辑运算符、其余运算符,运算符的样子长下面这样:
其中着重号标注的需要熟练掌握用法。

  • 算术运算符(+ \- * / %)
  • 关系运算符(> < == >= <= !=)
  • 逻辑运算符(! && ||)
  • 位运算(<< >> ~ | ^ &)
  • 赋值运算符(=及扩展运算符又称复合运算符)
  • 条件运算符(又称三目运算符 xxx?x1:x1)
  • 逗号运算符(,) 外部这个括号是必须的
  • 指针运算符 * &
  • 求字节运算符 sizeof
  • 强制类型转换运算符 (类型)xxx
  • 分量运算符(又称成员运算符) -> .
  • 下标运算符 []
  • 其他 函数调用运算符 ()

看完运算符分类,下面是运算符使用时需要注意的一些点。

1.算术运算符

可以进行加、减、乘、除、取余运算,使用方法与数学中无异。
值得注意的是:

  • 除法运算符在使用的时候如果除数与被除数均是整数那么整除后的结果会向下取整。
  • 取余时余数的正负号只与被除数有关(可以由以下代码验证)
#include"stdio.h"
int main()
{//%的运算对象只能是整数printf("%d\n", 7 % 3);//输出结果为1printf("%d\n", 7 % -3);//输出结果为1printf("%d\n", -7 % 3);//输出结果为-1printf("%d\n", -7 % -3);//输出结果为-1//a%b余数的正负号只与a的正负有关return 0;
}

通常加减乘除运算会与其余运算符一块使用,每一个算术运算表达式都最终都可以化为一个值。

2.关系运算符

关系表达式的值只有真或假,由于C语言中没有布尔类型,通常会使用0代表假、非零代表真即非零即一,关系运算符的优先级小于算术运算符的优先级。在使用关系运算符时需要严格注意==不要写成=,大于小于不要写成<<>>。下面两个例子就是反例:

  • 把==写成=(条件会出错)
#include"stdio.h"
int main()
{int i;//%的运算对象只能是整数printf("%d",i=2);//a%b余数的正负号只与a的正负有关return 0;
}
结果:
与变量的值有关
  • 判断时==连写例如5==5==5 或者 把a大于3小于5写成3
#include int main() {printf("5==5==5 result:%d\n",5==5==5);printf("5<10<5 result:%d",5<10<5);return 0;
}
结果:
5==5==5 result:0
5<10<5 result:1

3.逻辑运算符与逻辑表达式

这里值得注意的是逻辑非的运算级最高,逻辑或与逻辑与相同优先级但低于关系运算符,逻辑表达式与关系表达式一样,结果只有真或假,逻辑表达式通常写进分支语句或者循环语句中。逻辑运算符有一个特性:短路机制。规则如下:

  • 或运算时前置项为真时发生短路,逻辑表达式直接为真
  • 且运算时前置项为假时发生短路,逻辑表达式直接为假

示例:可以看出下面代码并没有执行打印操作

 #include int main() {int i=0;i&&printf("5==5==5 result:%d\n",5==5==5);return 0;
}

在这里插入图片描述

4.其余运算符

这里着重说一下赋值运算符与sizeof运算符。其余的运算符后面会说到

  • 赋值运算符
    赋值运算符是未来我们写代码的时候最常用的运算符之一,赋值运算符的左端必须是左值,也就是有内存地址的变量,不可以是右值也就是常量,否则会引发编译错误。除此之外赋值运算符还包含符合赋值运算符 += -= *= /=这些运算符也是算术运算符的一种简写方式,可以提高阅读代码与程序执行的效率。
  • sizeof运算符,这个其实是一个运算符并不是一个函数。

运算符的优先级

可以参考以下一个图表。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意:同一优先级运算符,运算次序由结合方向决定。不同级别优先级遵循以下规则:!>算术运算符>关系运算符>&&>||>赋值运算符。


相关内容

热门资讯

年度总结表彰大会主持词 年度总结表彰大会主持词9篇  总结是指社会团体、企业单位和个人在自身的某一时期、某一项目或某些工作告...
小学庆六一儿童节主持词 小学庆六一儿童节主持词(精选5篇)  契合现场环境的主持词能给集会带来双倍的效果。随着社会一步步向前...
经销商大会主持稿 经销商大会主持稿推荐  经销商大会主持稿(一)  尊敬的各位来宾,各位朋友  大家上午好  (8:5...
年会精彩致辞 年会精彩致辞(通用7篇)  在学习、工作乃至生活中,大家对致辞都不陌生吧,致辞具有很强的实用性和针对...
少儿活动主持人主持词 少儿活动主持人主持词  主持词需要富有情感,充满热情,才能有效地吸引到观众。我们眼下的社会,主持人参...
晚会主持词开场白 【必备】晚会主持词开场白(通用13篇)  主持词已成为各种演出活动和集会中不可或缺的一部分。在人们越...
六一儿童节鼓励致辞 六一儿童节鼓励致辞(通用20篇)  无论是身处学校还是步入社会,说到致辞,大家肯定都不陌生吧,致辞具...
幼儿园元旦联欢会主持词 2014年幼儿园元旦联欢会主持词2014年幼儿园元旦联欢会主持词1师:尊敬的各位老师幼:亲爱的小朋友...
同学会联欢会主持词 同学会联欢会主持词  借鉴诗词和散文诗是主持词的一种写作手法。在一步步向前发展的社会中,越来越多的活...
搞笑脱口秀台词脱口秀台词 搞笑脱口秀台词脱口秀台词1100字校园脱口秀台词每天,当我的双脚迈入合肥七中的大门,强相互作用会把我...
学生会换届大会主持词 学生会换届大会主持词  主持词的内容  主持词一般由开场白、中间部分与结束语组成。  开场白 演出或...
教研活动公开课主持稿   教研活动公开课主持稿  篇一:数学教研活动主持词  各位领导、各位老师,大家好!  在这样一个春...
《花木兰》感人台词 《花木兰》感人台词  壹 孝,替父从军父女情  感人段落:军令如山,花弧爱国心切,无奈年老气衰,百病...
红歌赛主持词 红歌赛主持词  由主持人于节目进行过程中串联节目的串联词。如今的各种演出活动和集会中,主持人往往成了...
联欢晚会主持词 联欢晚会主持词3篇  主持词可以采用和历史文化有关的表述方法去写作以提升活动的文化内涵。在如今这个时...
金榜题名主持词 金榜题名主持词(精选23篇)  主持词要根据活动对象的不同去设置不同的主持词。随着社会一步步向前发展...
光荣退休领导致辞 光荣退休领导致辞范文(通用5篇)  在学习、工作或生活中,要用到致辞的情况还是蛮多的,致辞是指在仪式...
大学迎新晚会主持词 大学迎新晚会主持词  迎新,全称迎接新春,又叫迎接新年。迎新是中国的传统节日形式。或者欢迎、迎接新来...
教师节校长简短致辞 教师节校长简短致辞(通用10篇)  在日常学习、工作抑或是生活中,大家或多或少都用到过致辞吧,在各种...
张国荣经典台词 关于张国荣经典台词  1、哭,我为了感动谁,笑,又为了碰着谁。  ——《路过蜻蜓》  2、虽然我很喜...