c语言赋值语句

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本次考试c语言考得最多的就是判断表达式的值。

今天我们先来一个专题:赋值语句

如:若有语句int a=6;,则执行语句a+=a-=a*a;后a的值为

首先观察这里面有几个运算符,他们的优先级和结合性是怎么样的。

从以上表中我们不难得出:优先级排列顺序(优先级就是先算什么后算什么)

括号>单目运算符(包括正负号,++,——)>算术运算符(乘除模除加减)>关系运算符(<、>、==等)>逻辑运算符(&&、||、!)>赋值运算符>逗号运算符。

在本题中,有两个复合赋值运算符+=和-=,和一个算术运算符*。我们应该先算a*a=36,

因为复合赋值的结合方式(同样的优先级的运算符是先算左还是算右)是从右向左,所以我们先算a-=a*a,等价于a=a-a*a=6-36=-30。

到这儿,a就是-30了。a=a+a=-60

所以答案是-60.

另外,一个合法的赋值语句,它的左侧不能为表达式。赋值语句的格式即为变量=表达式。

答案选C,这是逗号表达式的表达形式。参照课本。

相关文档
最新文档