赋值运算符与赋值表达式
一、赋值运算符与赋值表达式?
赋值符号 “=“就是赋值运算符,作用是将一个数据赋给一个变量或将一个变量的值赋给另一个变量,由赋值运算符组成的表达式称为赋值表达式。一般形式为:?
变量名 = 表达式?
在程序中可以多次给一个变量赋值,每赋一次值,与它相应的存储单元中的数据就被更新一次,内存中当前的数据就是最后一次所赋值的那个数据。?
例:a=12; 此表达式读作“将10的值赋值给变量a”。?
说明:?a、如果赋值号两边的运算对象类型不一致,系统会自动进行类型转换,转换的规则:将赋值号右边表达式的值的类型转换成赋值号左边变量的类型,?
例:int y=3.5; 在变量y中最终存储的是整数3。?
b、 可以将复制表达式的值再赋值给变量,形成连续赋值。?
例如:x=y=25 是一个连续赋值表达式,x=y=25 等价于x=(y=25),所以表达式x=y=25 最终的值为25 。?
二、复合的赋值运算符?
在赋值运算符之前加上其他运算符可以构成复合赋值运算符。其中与算术运算有关的复合运算符是:+=,-=,_=,/=,%= 。?
两个符号之间不可以有空格,复合赋值运算符的优先级与赋值运算符的相同。表达式n+=1等价于n=n+1,作用是取变量n中的值增1再赋给变量n,其他复合的赋值运算符的运算规则依次类推。?
如求表达a+=a-=a_a 的值,其中a的初值为12 。?
步骤:?
(1)先进行“a-=a_a“运算,相当于a=a-a_a=12-144=-132 。?
(2)再进行“a+=-132“运算,相当于 a=a+(-132)=-132-132=-264 。?
关系运算符和关系表达式
一、C语言中的逻辑值?
C语言中的逻辑值只有两个:真(true)和假(flase)。用非零代表真,用零代表假。因此,对于任意一个表达式,如果它的值为零,就代表一个假值,如果它的值为非零,就代表一个真值。只要值不是零,不管是正数,负数,整数,实数,都代表一个真值。例如-5的逻辑值为真。?
二、逻辑表达式?
“&&”和“||”的运算对象有两个,故它们都是双目运算符,而!的运算对象只有一个,因此它是单目运算符。逻辑运算举例如下:?
(1)a&&b: 当&&两边都为“真”时,表达式a&&b的值才是真。?
值得注意的是:在数学中,关系式0?
(2)a||b: 当||两边有一个为“真”时,表达式a||b的值就是真。?
(3)!a: 表示取反,如果a为真,则!A为假,反之亦然。例如!-5的值就为0.?
在C语言中,由&&或||组成的逻辑表达式,在某些特定情况下会产生“短路“现象。?
(1)x && y && z ,只有当x为真(非0)时,才需要判别y的值;只有x和y都为真时,才需要去判别z的值;只要x为假就不必判别y和z,整个表达式的值为0。口诀:“一假必假”。?
例:(!5==1)&&(++i==0) (!5==1)表达式的值为0,所以计算机运行中就跳过(++i==0)此表达式,(!5==1)&&(++i==0)表达式的值为0.?
(2)x||y||z ,只要x的值为真(非零),就不必判别y和z的值 ,整个表达式的值为1,只有x的值为假,才需要判别y的值,只有x和y的值同时为假才需要判别z的值,口诀:“一真必真”。?
位运算
一、位运算符?
在计算机中,数据都是以二进制数形式存放的,位运算就是指对存储单元中二进制位的运算。C语言提供6种位运算符。?
二、位运算?
位运算符 & |~<< >> ∧ 按优先级从高到低排列的顺序是:?
位运算符中求反运算“~“优先级最高,而左移和右移相同,居于第二,接下来的顺序是按位与 “&“、按位异或 “∧“和按位或 “|“。顺序为~ << >> & ∧ | 。?
例1:左移运算符“<<”是双目运算符。其功能把“<< ”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0。?
例如:?
a<<4?
指把a的各二进位向左移动4位。如a=00000011(十进制3),左移4位后为00110000(十进制48)。?
例2:右移运算符“>>”是双目运算符。其功能是把“>> ”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。?
例如:?
设 a=15,?
a>>2?
表示把000001111右移为00000011(十进制3)。?
应该说明的是,对于有符号数,在右移时,符号位将随同移动。当为正数时,最高位补0,而为负数时,符号位为1,最高位是补0或是补1 取决于编译系统的规定。?
例3:设二进制数a是00101101 ,若通过异或运算a∧b 使a的高4位取反,低4位不变,则二进制数b是。?
解析:异或运算常用来使特定位翻转,只要使需翻转的位与1进行异或操作就可以了,因为原数中值为1的位与1进行异或运算得0 ,原数中值为0的位与1进行异或运算结果得1。而与0进行异或的位将保持原值。异或运算还可用来交换两个值,不用临时变量。?
如 int a=3 , b=4;,想将a与b的值互换,可用如下语句实现:?
a=a∧b;?
b=b∧a;??
a=a∧b;?
所以本题的答案为: 11110000 。?
河南高考排名195560左右排位理科可以上哪些大学,具体能上什么大学
吉林外国语大学和湘潭大学兴湘学院哪个好 附对比和区别排名
江西工商职业技术学院在黑龙江高考历年录戎数线(2024届参考)
甘肃高考排名5480左右排位理科可以上哪些大学,具体能上什么大学
四川文化艺术学院和天津城建大学哪个好 附对比和区别排名
江西高考排名71510左右排位理科可以上哪些大学,具体能上什么大学
纺织厂实习心得范文10篇
小学生写元宵节作文满分(七篇)
四年级下学期语文优质教案设计文档五篇
有关c语言入门的基础知识有哪些
有关c语言入门的基础知识有哪些
关于婚礼敬茶礼仪知识有哪些
湖南结婚礼仪流程模板
怎样养狗知识大全
中华鲟鱼知识最新大全
貂皮知识大全最新
齐齐哈尔工程学院在新疆高考招生计划人数专业代码(2024参考)
宁夏工商职业技术学院在河南高考招生计划人数专业代码(2024参考)
河北高考排名184970左右排位历史可以上哪些大学,具体能上什么大学
湖北高考排名174600左右排位物理可以上哪些大学,具体能上什么大学
考福州外语外贸学院要多少分宁夏考生 附2024录取名次和最低分
湖南师范大学在云南高考招生计划人数专业代码(2024参考)
广东高考排名247430左右排位物理可以上哪些大学,具体能上什么大学
陕西青年职业学院在宁夏高考历年录戎数线(2024届参考)
安徽文达信息工程学院的审计学专业排名怎么样 附历年录戎数线
安徽高考排名263910左右排位理科可以上哪些大学,具体能上什么大学
考安顺学院要多少分广东考生 附2024录取名次和最低分
广东高考排名94120左右排位物理可以上哪些大学,具体能上什么大学
四川高考排名6710左右排位理科可以上哪些大学,具体能上什么大学
考洛阳科技职业学院要多少分甘肃考生 附2024录取名次和最低分
福建高考排名46830左右排位物理可以上哪些大学,具体能上什么大学
重庆机电职业技术大学的数控技术专业排名怎么样 附历年录戎数线
郑州升达经贸管理学院和辽宁工业大学哪个好 附对比和区别排名
赣州职业技术学院和扬州工业职业技术学院哪个好 附对比和区别排名
江西外语外贸职业学院在内蒙古高考历年录戎数线(2024届参考)
四川高考排名14260左右排位理科可以上哪些大学,具体能上什么大学
中华鲟鱼知识大全最新
狗场养狗知识最新大全
养狗知识大全最新
鹦鹉知识的资料大全最新
貂皮基本知识大全最新
结婚梳头礼仪知识有哪些
商务礼仪敬茶礼仪
大连婚庆礼仪知识有哪些
黎族婚丧礼仪知识有哪些
夏至养生饮食禁忌
浅谈商务西餐宴请的基本礼仪要点
商务礼仪女士丝巾搭配
商务礼仪中女性妆容
商务圆桌礼仪要点
商务活动中的就餐礼仪