C语言..若 x,i,j和K都是int型,则执行表达式 x=(i=4,j=16,k=32)后X的值为多少?我想知道详细的解法!

要稍微详细点啊!... 要稍微详细点啊! 展开
 我来答
zhyyuxj
2009-10-21
知道答主
回答量:21
采纳率:0%
帮助的人:22.5万
展开全部
首先,它是个赋值句X=的问题,i=4.j=16,k=32是逗号表达式,逗号表达式的值是由最后一个逗号表达式决定的,所以(i=4,j=16,k=32)的结果是k=32.
连起来就是X=k=32即k=32.
希望你理解了。再给你举个例子:
就用上面的变量:X=(i=4,i+1,j=3)的结果就是X=3,无论前面有多少个逗号,它只取决于最后一个,但你也不能说不算前面的,运行这条命令后想当于给3个变量赋值了,i=4,中间只是个数,就是4+1但并没有将4+1赋i.j=3.
如果是X=(i=4,i+1,i=8)那么结果就是X=8.
匿名用户
2009-10-21
展开全部
x 值为32
其中 括号的优先级高,先算括号里的,里面是逗号表达式,从左到右依次运算
i的值赋成4,j为16,k为32,逗号表达式的值为最后的一个表达式的值就为32
原式等同于
i=4;
j=16;
k=32;
x=32;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shy2850
2009-10-20 · TA获得超过6773个赞
知道大有可为答主
回答量:2505
采纳率:55%
帮助的人:1554万
展开全部
平行语句执行:从左到右;
赋值语句执行:从右到左。

所以:x=(i=4,j=16,k=32)
执行过程就是:i=4,j=16,k=32,x=k;
答案是:x=32
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
boremy
2009-10-20 · TA获得超过770个赞
知道小有建树答主
回答量:1062
采纳率:0%
帮助的人:583万
展开全部
结果32
#include<stdio.h>
void main()
{
int x=0,i=0,j=0,k=0;
x=(i=4,j=16,k=32);
printf("%d",x);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
LBJKG
2009-10-20
知道答主
回答量:44
采纳率:0%
帮助的人:21.3万
展开全部
逗号表达式,再赋值。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式