...printf("%d%d\n",(++x,y++),z+2) }的值。是怎么运算的?

发布网友 发布时间:2024-10-23 22:46

我来回答

4个回答

热心网友 时间:2024-11-09 20:18

我来给你详细说说:
(++x,y++),这是逗号表达式,先执行++x,然后执行y++;结果取逗号后面表达式的值,也就是y++的值。y++的值为3,因为这是后加表达式,如果是前加++y的话,值就是4;
z+2的值是1+2=3;
所以结果输出是3 3

热心网友 时间:2024-11-09 20:20

1 本题考查的是逗号表达式知识点,逗号表达式的值是最后一个表达式的值。
2 (++x,y++)这个逗号表达式的值是最后一个表达式y++的值,而y++的值是3。
3 程序最后输出:33
4 第一个3是(++x,y++)这个逗号表达式的值,第二个3是z+2这个表达式的值。

热心网友 时间:2024-11-09 20:18

输出(++x,y++)和Z+2的值,其中(++x,y++)就是输出y的值,Y++就是先输出y再自加1,++y就是加1在输出y,x没他什么事;

热心网友 时间:2024-11-09 20:24

首先哦 printf 那个语句少了个分号~
printf是个输出语句 输出这个%d%d\n
\n是换行
第一个%d指(++x,y++)这个的值 括号是为了区分。重点是 逗号运算。 它 第一步 先把++x的值算出来,从左到右先+1再用x 所以最后++x的值是4。 第二步 把y++的值算出来 从左到右 先用y再+1. 所以y++的值是3。 第三步 把y++的值赋给%d 。 所以第一个%d的值是 3。

第二个%d 1+2=3 所以也是3.
最后输出 33
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com