以下程序段的运行结果是( )。 int a=1; printf("%d, %d, %d\n", a, ++a, a++);
答案:4 悬赏:40 手机版
解决时间 2021-02-03 01:42
- 提问者网友:刺鸟
- 2021-02-02 03:08
以下程序段的运行结果是( )。 int a=1; printf("%d, %d, %d\n", a, ++a, a++);
最佳答案
- 五星知识达人网友:污到你湿
- 2021-02-02 04:00
结果是 3,3,1 因为printf执行的时候是从右往左的,先算a++ 再算++a 最后算a ;
第一步 执行完a++之后 输出1,a的结果是2;
第二步 执行++a,先自加再使用 输出3,a的结果是3;
第三步 直接输出a ,即 输出3
第一步 执行完a++之后 输出1,a的结果是2;
第二步 执行++a,先自加再使用 输出3,a的结果是3;
第三步 直接输出a ,即 输出3
全部回答
- 1楼网友:玩世
- 2021-02-02 06:59
n=a++:先将a的值作为a++即n的值,n=1(a=1)
++a,再将a的值作为++a的值(此时a=2)
a++:先执行a=a+1;则运行后,下次模糊了就看看假设m=++a,再执行a=a+1(此时a=2)
你可以把这段话记下来,m=2
- 2楼网友:蓝房子
- 2021-02-02 05:24
3 3 1
从右向左,
a++,先打印 ,a=1,再加1 ,a=2
然后 再 ++a ,a=3,然后打印
最后就打印 a
- 3楼网友:青尢
- 2021-02-02 04:27
从左向右,a++是先运算再执行加1,++a是先加1再运算。分号之前a++就a等于1
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯