C语言菜鸟提问:自增自减-2

main(){intx,a,b,c,d;x=3;printf("%d\t%d\t%d\t%d\n",x,x++,x,x--);a=x=3;b=x++;c=x;d=x--;... main ( )
{ int x, a, b, c, d ;
x=3;
printf("%d\t%d\t%d\t%d\n", x, x++, x, x--);
a=x=3; b=x++ ;
c=x; d=x--;
printf("%d\t%d\t%d\t%d\n",a, b, c, d );
}
输出结果:3 2 2 3
3 3 4 4
怎么就x++=2,x--=3……后面几个也有点迷糊。
麻烦讲得详细点,谢谢!
展开
 我来答
化丹萱30
2011-03-03 · TA获得超过209个赞
知道小有建树答主
回答量:208
采纳率:0%
帮助的人:117万
展开全部
你的 printf("%d\t%d\t%d\t%d\n", x, x++, x, x--);和 3 2 2 3对应是错的 正确的是 3,3,4,4
下面一个是对的
x++的意思是先引用x,完了之后x自加1,例如 a=x++,与 a=x;x=x+1;两句话等效。同理,a=x--与a=x;x=x-1等效
采楼傲0n
2011-03-03
知道答主
回答量:16
采纳率:0%
帮助的人:2万
展开全部
应用在printf语句中,是从右往左输出的,所以是这样的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户36155
2011-03-05 · TA获得超过107个赞
知道答主
回答量:156
采纳率:0%
帮助的人:127万
展开全部
)==2中 i开始为2 执行完这句话后i才为3,所以输出的i为3

你说的那种情况是 (++i)==2?i:i--的情况
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户83045
2011-03-04 · TA获得超过575个赞
知道小有建树答主
回答量:539
采纳率:0%
帮助的人:379万
展开全部
)==2中 i开始为2 执行完这句话后i才为3,所以输出的i为3

你说的那种情况是 (++i)==2?i:i--的情况
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一兜菠萝包DO1f2
2011-03-06 · 超过17用户采纳过TA的回答
知道答主
回答量:98
采纳率:0%
帮助的人:49.2万
展开全部
结果应该是 3 3 4 4才对吧、、a=3 b=3 c=4 d=4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式