用户:科普喵查看:2 回复:6 评论:2 创建时间:2018-11-15T18:56:25
喵~
又到每周C语言小课堂啦!
+、-、×、÷符号相信大家都很熟悉,
但是你知道程序里的运算符是怎么样的吗?

本期讲解C语言的运算符,
你准备好了吗?
出发!
一、算术运算符
注:C语言中没有“×,÷”算术符号
1.相除运算符 /
(1)当运算符 / 的操作数(被除数和除数)均为整数时,结果为取商(取整)。
例如:17/5 结果为两数相除的商 3
(2)当运算符 / 的操作数中有一个或两个有小数,结果与数学中除法运算相同,包含整数部分和小数部分。
例如:9/2.5 结果为 3.600000
2.求余运算符%
(1)当运算符 % 的操作数(被除数和除数)均为整数时,结果为取余。
例如:17%3 结果为两数相除的余数 2
(2)当运算符 % 的操作数中有一个或两个存在小数时,则语法错误。
例如:10.0%3则是错误的
(3)运算后的符号取决于被模数(被除数)的符号
例如:(-10)%3 = -1; 而10%(-3) = 1
注:该运算只适合用两个整数进行取余运算
3.自增(++)与自减(--)运算符
注:无论是a++还是++a都等同于a=a+1,在表达式执行完毕后a的值都自增了1;
无论是a--还是--a都等同于a=a-1,在表达式执行完毕后a的值都自减少1。
输出结果为:
4.运算符号的优先级
代码分析
(1) b=++a+4;
该语句中运用到三个运算符:自增运算符 ++、加法运算符 + 、赋值运算符 =,三个运算符的优先级是 ++ 最高,其次是求和,最低的是赋值运算符。
该语句等价于 b=(++a)+4;
拆分为:a=2+1;b=3+4;a=3;
先取变量 a 的值 2 加 1 后的结果 3 作为 ++a 表达式的值,然后把该表达式的值 3 与 4 求和的值 赋值给变量 b,即 b 值为 7。执行完该语句后变量 a 自身值增 1,其值变为 3。
(2) c=3*a++;
等价于 c=3*(a++);
拆分为:a=3+1;c=3*4;a=4;
把 3 与 a++ 求积的结果赋给 c,而 a++ 表达式表示先把变量 a 的值 3 作为该表达式的值,即 c=3*3; 同时变量 a 自身值增 1,变为 4。
(3) d=a--*3;
等价于 d=(a--)*3;
拆分为:a=4;d=4*3;a=4-1;
先取变量 a 的值 4 作为表达式 a-- 的值,把 4*3 的值 12 赋给变量 d。同时变量 a 自身减 1,变为 3。
(4) printf("a=%d,b=%d,c=%d,d=%d", a,b,c,d);
双引号中有 4 个输出格式控制符,依次使用输出列表中 4 个输出项 a、b、c、d 的值替换。
(5)运行结果为:
a=3,b=7,c=9, d=12
本期作业(单选题)
int a = 3; b = 4; 计算 a+b%(a+b)/a+a*b-b 该算式的运算结果( )
A、算式结果为:11 B、算式结果为:12
C、算式结果为:13 D、算式结果为:14
上期答案:B
【趣玩C语言·05】强制类型转换 https://www.codemao.cn/community/167051
也许你还想看:
【趣玩C语言】“ Hello World”猫厂新栏目开讲啦!https://www.codemao.cn/community/166339
【趣玩C语言·02】变量和赋值 https://www.codemao.cn/community/166502
【趣玩C语言·03】基本数据类型&输出格式https://www.codemao.cn/community/166706
【趣玩C语言·04】不可改变的常量&自动类型转换 https://www.codemao.cn/community/166878
本期优秀技术帖
1.糖醋排骨&少院士 【少院士讲堂】第十三期:悄喵打上马赛克(resenwords函数制作https://www.codemao.cn/community/167117
2.麦克斯 【萌新也能懂算法】最短路径(一)https://www.codemao.cn/community/167072
更多编程小技巧
请关注【编程技巧】分区
和科普喵一起成为编程大佬吧~
风少年int a = 3; b = 4; 计算 a+b%(a+b)/a+a*b-b
3+4%(3+4)/3+3*4-4
=3+4%7/3+12-4
=3+3/3+12-4
=3+1+12-4
=12
所以答案=12
点赞0
评论