设有int变量i,j,k,其值分别为1,2,3

执行表达式后:i++==1&&(++j==3||k++=3)表达式值为__1__,i的值为___2____,j的值为___3____,k的值为__3_____,求解析... 执行表达式后:
i++= =1&&(++j= =3||k++=3)
表达式值为__1__, i的值为___2____, j的值为___3____, k的值为__3_____,
求解析
展开
 我来答
百度网友383989dc3
2012-01-04 · 超过13用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:42.7万
展开全部
根据C的运算顺序
第一步运算括号内的程序
括号内先运行++ --顺序是由右向左
算后 j=3;k=4 (注:J=3是最后结果,K=4不是最后结果,下面还有赋值运算)
然后运算==
得到结果 1||k=3
再预算||
得到(++j= =3||k++=3)表达试为1
最后进行 = 赋值预算所以K=3 (注:K=3是最后结果)
第二步根据第一步预算得到表达式 i++==1&&1
先进行++ --运算
i=2 (注:I=2是最后结果)
再行进==预算
得到表达式0&&1
最后得到表达式的值为0

与你的结果不太一致,提供参考。下边是C语言的运算顺序,可以根据这个来运算。

C语言运算符分类
  1级(左结合)
  () 圆括号;[]下标运算符;->指向结构体成员运算符;. 结构体成员运算符。
  2级(右结合)
  !逻辑非运算符;~按位取反运算符;++前缀增量运算符;--前缀减量运算符;+正号运算符;-负号运算符;(类型)类型转换运算符;*指针运算符;&地址运算符;sizeof长度运算符。
  3级(左结合)
  *乘法运算符;/除法运算符;%取余运算符。
  4级(左结合)
  +加法运算符;-减法运算符。 
  5级(左结合)
  <<左移运算符;>>右移运算符。
  6级(左结合)
  <、<=、>、>=关系运算符。
  7级(左结合)
  ==等于运算符;!=不等于运算符。
  8级(左结合)
  &按位与运算符。
  9级(左结合)
  ^按位异或运算符。
  10级(左结合)
  |按位或运算符。
  11级(左结合)
  &&逻辑与运算符。
  12级(左结合)
  ||逻辑或运算符。
  13级(右结合)
  ? :条件运算符。
  14级(右结合)
  =、 +=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 <<=、 >>=赋值运算符。
  15级(左结合)
  ,逗号运算符。
shine1991
科技发烧友

2012-01-04 · 智能家居/数码/手机/智能家电产品都懂点
知道顶级答主
回答量:4.7万
采纳率:82%
帮助的人:2.3亿
展开全部
等等,这个题有问题
k++=3
这里k++不是左值表达式,编译时就会出错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
25586478
2012-01-04
知道答主
回答量:2
采纳率:0%
帮助的人:3309
展开全部
你要给定i,k,j的数值才可以帮你解决问题的,我给答案你,你只要把对应的数值带进去就可以了
表达式值为__1__, i的值为___i+1____, j的值为___j+1____, k的值为__k+1_____,
因为还没有i,k,j的值,所以第一问还不能解决
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式