武汉理工大学计算机学院信息技术会00心00000000009000000计算机程序设计基础C语言主讲教师:李宁武汉理工大学Wuhan Universityof Technology
主讲教师:李宁
计算机程序设计基础C语言0赋值运算符及其表达式武汉理工大学Wuhan Universityof Technology
计算机程序设计基础C语言
赋值运算符和赋值表达式运算符名称表达式等价于a=6+2赋值运算符(双目)+=加赋值运算符(双目)a+=3a=a+3a-=4a=a-4减赋值运算符(双目)*=a*=9a=a*9乘赋值运算符(双目)/=a/=5除赋值运算符(双目)a=a/5%=运算符(双目)a%=6a=a86
运算符 名称 表达式 等价于 = 赋值运算符(双目) a=6+2 += 加赋值运算符 (双目 ) a+=3 a=a+3 - = 减赋值运算符 (双目 ) a -=4 a=a - 4 *= 乘赋值运算符 (双目 ) a*=9 a=a*9 /= 除赋值运算符 (双目 ) a/=5 a=a/5 %= 运算符 (双目 ) a%=6 a=a%6
赋值运算符和赋值表达式赋值运算符“="将变量和表达式连接起来就组成赋值表达式。其格式如下:变量=表达式赋值运算符“一"的右边是表达式,而左边只能是一个变量。一个变量可以先后被多次赋值,变量仅保存最后一次赋值。赋值运算符不同于数学上的“等号
赋值运算符“ =”将变量和表达式连接起来就组成赋 值表达式。其格式如下: 变量=表达式 赋值运算符“ =”的右边是表达式,而左边只能是一个变量。 一个变量可以先后被多次赋值,变量仅保存最后一次赋值。 赋值运算符不同于数学上的“等号”
说明赋值运算符是双目运算符,所有赋值运算符(包括复合赋值运算符)的优先级别相同,其结合方向为从右至左。算术运算符的优先级高于赋值运算符。a=3+2。先算+,“+"的优先级高于“=";然后将5赋值给a。运算完,变量a的值为5,表达式的值为5。■有inta=2;,则表达式a*=3+2的值是10,a的值是10。因为a*=3+2等价于a=a*(3+2),“+"的优先级高于“*=",先“+",再“*="。一定不要将a*=3+2理解成a=a*3+2。a=(b=5)/(c=2)。先算(b=5),再算(c=2),然后进行除法运算结果为2,最终将2赋给a。运算完,b的值为5,c的值为2,a的值为2,整个表达式的值为2。■在赋值表达式中的“表达式”又可以是一个赋值表达式。例如,a=b=7。先算b=7,因为二的结合方向为右结合。赋值表达式b=7的值为7,再将7赋给a。运算完成后,变量a和b的值为7,整个表达式的值为7
赋值运算符是双目运算符,所有赋值运算符(包括复合赋值运算符)的优先级 别相同,其结合方向为从右至左。算术运算符的优先级高于赋值运算符。 a=3+2。先算+, “+”的优先级高于“ =”;然后将5赋值给a。运算完,变量a 的值为5,表达式的值为5。 有int a=2;,则表达式a*=3+2的值是10,a的值是10。因为a*=3+2等价于 a=a*(3+2), “+”的优先级高于“*=”,先“+”,再“*=”。一定不要将 a*=3+2理解成a=a*3+2。 a=(b=5)/(c=2)。先算(b=5),再算(c=2),然后进行除法运算结果为2,最终将2 赋给a。运算完,b的值为5,c的值为2,a的值为2,整个表达式的值为2。 在赋值表达式中的“表达式”又可以是一个赋值表达式。 例如,a=b=7。先算b=7,因为=的结合方向为右结合。赋值表达式b=7的值 为7,再将7赋给a。运算完成后,变量a和b的值为7,整个表达式的值为7