今天为大家带来运算符的详细教程
运算符
在C语言中,我们常常会用到表达式,在使用表达式的过程中便会使用到运算符。C语言中,不同的运算符拥有不同的优先级和结合性。在执行运算的过程中,程序会按照运算符的优先级和结合性进行计算。
1.算数运算符的优先级
在C语言中,乘法 * 除法 / 和取模 % 的优先级高于 加号 + 减号 - 。如果在一个表达式内同时出现乘法 * 除法 / 和取模 % 以及加号 + 和减号 - 。那么就应该先运算乘法 * 除法 / 和取模 % 。例如:
Num = a + b * c ;
上述示例代码就是先运算乘法 * ,后运算加法 + 。
2.运算符的结合性
当我们使用的表达式中有多个运算符,且他们的优先级相同时,遵循从左到右的顺序进行计算。例如:
#include
#include
using namespace std;
int Num1, Num2, Num3, Result;
int main() {
Num1 = 40;
Num2 = 20;
Num3 = 5;
Result = Num1 + Num2 - Num3;
cout << Result << endl;
Result = Num1 - Num2 + Num3;
cout << Result << endl;
Result = Num1 + Num2 * Num3;
cout << Result << endl;
Result = Num1 / Num2 * Num3;
cout << Result << endl;
Result = (Num1 + Num2) * Num3;
cout << Result << endl;
上述代码的运行结果为:
由此可以看出,算术运算符在不同的优先级和结合性下的运算顺序。
3.自增运算符与自减运算符
除了上述的运算符外,C语言还提供了两种特殊的算数运算符,他们分别是自增运算符 ++ ,和自减运算符 -- 。自增运算符和自减运算符的作用分别是在自身的数值上+1 或者 -1 。值得注意的是,自增运算符和自减运算符分别有前置自增和后置自增。前置自增为先执行自增后执行语句,而后置自增则是先执行语句后进行自增。同理,自减也是这样。例如:
#include
#include
using namespace std;
int main() {
int Num1,Result;
Num1 = 5;
Result = Num1++;
cout << Result << endl;
Num1 = 5;
Result = ++Num1;
cout << Result << endl;
Num1 = 5;
Result = Num1--;
cout << Result << endl;
Num1 = 5;
Result = --Num1;
cout << Result << endl;
}
上述代码的执行结果如下:
可以看到,后置自增以及自减的结果不会改变,而前置自增及自减就达到了预计结果。如果想要后置自增或者自减也达到预计效果,可以这样更改:
#include
#include
using namespace std;
int main() {
int Num1,Result;
Num1 = 5;
Result = Num1++;
cout << Result << endl;
cout << Num1 << endl;
Num1 = 5;
Result = Num1--;
cout << Result << endl;
cout << Num1 << endl;
}
上述代码的执行结果如下:
根据不同的需求,我们可以合理的运用前置或者后置来达到目的。
今天的内容就到这里,下期小编将带大家继续学习,各位看官老爷记得查阅哦~
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
C语言
+关注
关注
180文章
7604浏览量
136614 -
程序
+关注
关注
117文章
3782浏览量
80990 -
运算符
+关注
关注
0文章
172浏览量
11078
发布评论请先 登录
相关推荐
单片机C语言运算符的优先级和结合性
运算符的优先级和结合性 优先级操作符功能结合性1(最高)()改变优先级 从左到右 2[]数组下标->指向结构体成员.结构体成员 ++;–自增1;自减1(++i,–i: 在使用之前,先
发表于 11-07 10:47
C语言运算符的优先级和结合性
执行左边的叫左结合性。 表达式(Expression)和语句(Statement)的概念在C语言中并没有明确的定义: 表达式可以看做一个计算的公式,往往由数据、变量、运算符等组成,例如3*4+5、a
发表于 07-06 06:46
C语言运算符优先级(超详细)
C语言运算符优先级(超详细) 当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给大家,欢迎拍砖!
发表于 04-27 16:47
C语言运算符优先级详细列表
发表于 07-12 16:46
•0次下载
C语言运算符优先级列表
发表于 11-03 13:31
•5次下载
C语言运算符优先级次序表
发表于 10-09 14:03
•0次下载
51单片机实战教程之C语言基础(二 C语言运算符)
Keil C51基础之运算符详解一. 算术运算符 包括加(+)、减(-)、乘(*)、除(/)、取模 (%)、自加(++)、自减(--)。 示例: 5 % 3; 结果: 2 char a = 5
发表于 11-21 11:21
•13次下载
c语言运算符及例题
C语言中逻辑运算符包含逻辑与&&、逻辑或||、逻辑非!三种。其中逻辑与&&是双目运算符,即需要运算符两边都要有表达式,且两边表达式都为真,此
发表于 02-16 16:14
•0次下载
评论