- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
算术运算符和算术表达式 算元 符号 含义 优先级 结合性 例子 一元后缀 ++ 使用表达式中操作数的数值,然后加1 2 从右到左 j++ -- 使用表达式中操作数的数值,然后减1 2 从右到左 j-- 一元前缀 ++ 变量加1,然后在表达式中使用新数值 2 从右到左 ++j -- 变量减1,然后在表达式中使用新数值 2 从右到左 --j 算术运算符和算术表达式 算术表达式:算术运算符和括号将运算对象[操作数]连接起来、符合C语法规则的式子。 运算对象:常量、变量、函数,表达式; 运算符的优先级、结合性:首先按优先级进行,如果运算对象两侧的运算符具有相同的优先级,则按照结合性处理。 a+b-c (a+b)-c i++ i-- ++i --i a*b/c+1.5+’a’ (((a*b)/c)+1.5)+’a’ (int)(m/n)%100 I = 2; (1) J = I++; J = ++I; J = ???? i+++j (i++)+j i+(++j) 尽可能组多 字符 ++、--只能用于变量, 不能用于常量和表达式 算术运算符和算术表达式 避免写出自己都模糊的歧义表达式: i=3; (i++)+(i++)+(i++)=? i = 3; a = i++; b = i++; c = i++; d = a+b+c; printf(“i=%d, d=%d\n”, i,d); printf(“%d,%d\n”,i,i++) j = i++; printf(“%d,%d\n”,i,j); main() { int i=8; printf(%d\n,++i); printf(%d\n,--i); printf(%d\n,i++); printf(%d\n,i--); printf(%d\n,-i++); printf(%d\n,-i--); } -8 -9 9 8 8 9 3+4+5 or 3+3+3? 3,3or4,3? 各类数值型数据间的混合运算 C遇到两种不同数据类型的数值进行运算时,会将两个数做适当的类型转换,然后再进行运算。 类型转换的原则:转换总是朝数据能力更强的方向,并且转换总是逐个运算符进行的。 各类数值型数据间的混合运算 char short int long int float unsigned long unsigned int unsigned short unsigned char double Long double 高 低 由低向高直接 转换。 所有实数按 Double型运算 short a,b=1; unsigned char cc=240; printf(%d\n,a=b+cc); 241 各类数值型数据间的混合运算 main() { int a,b,c,d; unsigned u; a=12;b=-24;u=10; c=a+u;d=b+u; printf(“a+u=%d,b+u=%d\n”,c,d); } a+u=22,b+u=-14 main () { char a=1; short b=1; unsigned char cc=-1; printf(%d,%d\n,b+cc,a=b+cc); 256,0 各类数值型数据间的混合运算 隐式类型转换:5.0/9 显示[强制]类型转换:(float)5/(float)9 int x = 5, y = 9; float z; char ch=‘a’; z = (float)(x+y); x = (int)z; y = (int)(x+z+a); a = (char)y; z = (int)x+y; 2/4 = 0; 2/4.0 = 0.5; 2.0/4 = 0.5; 2.0/4.0 = 0.5; (int)(2.0/4.0)=0; 1/(int)2.0 = 0; 赋值运算符和赋值表达式 (1)赋值运算符与赋值表达式 (2)赋值语句 (3)类型转换 (4)复合的赋值运算符 赋值运算符:= 赋值表达式:变量=表达式 1、变量被赋值 2、赋值表达式的值是被赋值的 变量的值 如:a = 12 b = a+12.0*sin(x) c = sqrt(x*x+y*y)+100.0 con = (a b) (c d) if((a=b)0) … a = b = c = 5 [右结合] a = (b = (c = 5))
您可能关注的文档
- 第八章投资性房地产讲义.ppt
- 第三章历史唯物主义讲义.ppt
- 第二章畜牧场卫生概要.ppt
- 自我我新期待讲述.ppt
- 财务软件应用—薪资管理概要.pptx
- 财务舞弊3概要.ppt
- 第二章投影与视图基础讲义.ppt
- 财务战略规划书概要.ppt
- 第三章利率与利息讲义.ppt
- 第三章利润表分析2讲义.ppt
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)