各位亲爱的读者,大家好!今天博主给大家带来的内容是运算符与表达式的相关内容。首先运算符分为四类,分别是:算术运算符(用于处理四则运算),赋值运算符(用于将表达式的值赋给变量),比较运算符(用于表达式的比较,并返回一个真值或假值),逻辑运算符(用于根据表达式的值返回真值或假值)。
一.算术运算符与算术表达式
在C语言中,运算符被分为了单目运算符与双目运算符两类,分别是:单目运算符++(自加)、--(自减)、+(正号)、-(负号);双目运算符:+、-、*、/、%(模运算或取余)
1.除法运算符
首先根据数学的定理,除数是不可以为0的,同时,当参与运算的两个操作数均为整数时,得到的结果依旧是整数,结果去除小数部分,例如:;当参与运算的两个操作数中只要有一个数是小数类型,此时就可以得到正确的小数结果,例如:
。
2.模运算%
即取余运算,在C语言中,取余运算的两个数必须为整型,小数不能做取余运算,否则会出现语法错误。负整数参与模运算时结果的符号由被除数决定
例如:-7%3=-1而7%-3=1
3.自加、自减运算符
自加与自减都是单目运算符,用来将参与的变量加1和减1。自加与自减运算只有变量才可以使用。而自加与自减运算根据它们出现的位置不同,运算规则也各不相同
(1)前置递增、递减
++x、--x的计算规则是++和--出现在变量前,先进行自加或者自减,然后将变化后的x的值作为整个表达式的结果。例如:
a=2;b=++a;结果:a=3;b=3;
只有前置才会产生关联,先让变量加1,再进行运算。
(2)后置递增、递减
x++、x--的计算规则是++和--出现在变量后,先将x的值作为整个表达式的结果,然后再对x进行自加或自减,例如:
a=2;b=a++;结果:a=3;b=2;
后置只会影响语句的下一句,先进行表达式的运算,后让变量加1;
不管前置后置,a的值一定发生改变。
4.算术表达式
计算数学表达式的时候,数学中很多表达方式在C语言中是不能直接表达出来的,必须通过特定的方式来改写,注意事项如下:
(1)C语言没有上下结构的表达形式,分数要用/来表示。
(2)数学中乘法运算符可以省略,但C语言中不可以,必须将*加上。
(3)C语言中没有大括号与中括号,统一使用圆括号也就是小括号;
(4)分子分母尽量统一加圆括号,以免出现计算顺序错误;
(5)C语言提供了数学中的常用函数,比如sqrt、exp、sin、log等等,使用时只要调用相应的数学库即可。
二.赋值运算符与赋值表达式
1.简单赋值运算符和表达式
“=”在数学表达式中表示等式左右两边相等的概念,但在C语言中表示将等号右侧的计算结果存入等号左边的变量中,且要求等号左边必须是变量,右侧的计算结果要与左侧变量的类型保持赋值兼容。在这里假设已定义int x,常见错误方式如下:
x=5;//正确
5=x;//错误,原因:等号左侧是常量
x+1=5;//错误,原因:等号左侧是表达式
x=3.14//出现警告,原因:右侧是浮点型而左侧是整型,将会损失精度
简单赋值表达式就是简单赋值语句出现在一个表达式中,例如x=y=5;其中y=5就是一个简单赋值表达式,在C语言中,简单赋值表达式的结果由赋值号左侧变量的值决定,所以该语句就等价于x=(y=5),就是一个连环赋值语句。
2.复合赋值运算符和表达式
在C语言中,提供了五个算术复合赋值运算符+=、-=、*=、/=、%=。
例如:假设a、b、c的值分别为3,4,5
a+=5;//等价于a=a+5;
b*=12;//等价于b=b*12;
c/=8;//等价于c=c/8;
a%=b+c;//等价于a=a%(b+c);
三.今日总结
在今天的学习中,博主给大家带来的内容是有关算术运算符以及赋值运算符的相关知识,在明天的学习中,博主将会给大家带来比较运算符和逻辑运算符以及bool类型的相关知识,在这里感谢大家的关注与支持!欢迎在评论区分享属于你的看法与见解,博主看到后会第一时间回复!