求大神赐教,求一C语言题!!有以下程序 #include <stdio.h> main() { int x, y, z; x=y=1; z=x++,y++,++

有以下程序#include<stdio.h>main(){intx,y,z;x=y=1;z=x++,y++,++y;printf("%d,%d,%d\n",x,y,z);... 有以下程序
#include <stdio.h>
main()
{ int x, y, z;
x=y=1;
z=x++,y++,++y;
printf("%d,%d,%d\n",x,y,z);
}

程序运行后的输出结果是
A) 2,3,1
B) 2,3,2
C) 2,3,3
D) 2,2,1
展开
 我来答
cjj796
2013-09-19 · TA获得超过8709个赞
知道大有可为答主
回答量:1.3万
采纳率:68%
帮助的人:3613万
展开全部

通过实际验证了的结果,答案是 A

这里我分布说明,程序的过程:

    第一步计算:x = y = 1;

    第二步计算:z = x ;   结果 z = 1;

    第三步计算:x++ ;    结果 x = 2; 

    第四步计算:y++;   前面赋值 y=1; y++ 后 y = 2;

    第五步计算:++y;   前面 y++ 后,y =2 这里 ++y;  结果 y = 3;

        最后结果:x =2 ; y = 3 ; z = 1 


只要明白了,运算的优先权,就能很好的理解并计算

爵士英雄大狼
2013-09-19 · 超过10用户采纳过TA的回答
知道答主
回答量:46
采纳率:14%
帮助的人:16.6万
展开全部
x++是先使用后计算所以z=1,++y是先计算后使用,经y++后是2,++y后是3,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
White_MouseYBZ
2013-09-19 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6992万
展开全部
A)2,3,1正确。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
水象k
2013-09-19
知道答主
回答量:12
采纳率:0%
帮助的人:3万
展开全部
A,分清是先加后用还是先用后加就可。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a4138
2013-09-19 · TA获得超过265个赞
知道小有建树答主
回答量:395
采纳率:0%
帮助的人:111万
展开全部
答案:A。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式