全部问题 > 当前问题

x++ x, ++x=x+1,刚才课里讲。为什么现在解析不是啦

白俊琪 2016-2-19 09:30:09

共 4 个回答

最佳答案

嘿嘿大人 2016-2-19 09:33:29

想问啥啊?问题看着是乱的:

n=++x可以分为两步:第一步:x=x+1,第二步:n=x

n=x++同样可以分为两步:第一步:n=x,第二步:x=x+1

白俊琪 2016-2-19 09:35:57

为啥n=++x要分成两步,是规定吗


白俊琪 2016-2-19 09:36:16

回复 嘿嘿大人

为啥n=++x要分成两步,是规定吗


嘿嘿大人 2016-2-19 10:10:15

回复 白俊琪:是规定,但是如果只是一个单独的++x或者x++就不需要分为两步

问题来自: a 和 a
设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是 ______ 。
A. x++;printf("%d\n",x);
B. n=++x;printf("%d\n",n);
C. ++x;printf("%d\n",x);
D. n=x++;printf("%d\n",n);
答案:D
解析:x++是先执行再加1,++x是先加1再执行 假设x的初始值是5,x++=5,输出x=6,++x=6,输出x=6,则A、B、C输出的都是6,D输出的是n,n=x++=5,所以D输出的是5。因此选D。