有如下程序 main( ) { int y=3,x=3,z=1; printf(“%d %d\n”,(++x,y++),z+2); } 运行该程序的输出结果是(

如题所述

第1个回答  2012-04-01
逗号符,表示对这两个表达式执行逗号运算…(x,y)这个表达式的值为y的值 ++x就是将x的值+1后赋给表达式,y++就是先将y拿去计算,在讲y加1 ,
第2个回答  2010-11-26
(4,3),3
第3个回答  2010-11-26
3 3本回答被提问者采纳

有如下程序 main( ) { int y=3,x=3,z=1; printf(“%d %d\\n”,(++x...
逗号符,表示对这两个表达式执行逗号运算…(x,y)这个表达式的值为y的值 ++x就是将x的值+1后赋给表达式,y++就是先将y拿去计算,在讲y加1 ,

...main( ) { int y=3,x=3,z=1; printf("%d %d\\n",(++x,y++),z+2...
输出的值分别是(++x,y++)和z+2 (++x,y++)这个是一个逗号表达式,返回值为最右边表达式的值。所以返回的值为y。z+2就是3 所以输出为3 3 这个主要考的是逗号表达式返回值

...main() { int y=3,x=3,z=1; printf("%d%d\\n",(++x,y++),z+2) }...
(++x,y++),这是逗号表达式,先执行++x,然后执行y++;结果取逗号后面表达式的值,也就是y++的值。y++的值为3,因为这是后加表达式,如果是前加++y的话,值就是4;z+2的值是1+2=3;所以结果输出是3 3

...int main() { int y=3,x=3,z=1; printf("%d%d\\n",(++x,y++),z+2...
逗号运算符,只取最后一个参数,(++x,y++)其实就是y++,z+2=3,其中++x的值为4,y++的值为3,x,y的值都为4

...main() { int y=3,x=3,z=1; printf("%d%d\\n",(++x,y++),z+2) }...
++x,x先加1在运算,y++,y先运算在加1

...main() {int w=4,x=3,y=2,z=1: printf ("%d\\n",(w<x?w:z<y?z:x...
开始 w=4,x=3,y=2,z=1 w<x?w:z<y?z:x 时一个嵌套的三目运算符 w<x 4<3 为假,执行 z<y 1<2 真 ,所以结果就是z ,就是 1 结果为1 科普:表达式1?表达式2:表达式3 表达式1 为真 ,结果就是表达式2 表达式1 为假 ,结果就是表达式3 ...

...main() { int x=1,y; y=++x*++x; printf("%d\\n",y); }
1。i-- i 参与运算后,i 的值再自减 1。解答问题:x=1为初始化值.y=++x * ++x;第一个++x, x=2;第二个++x, x=3; 同样道理 第一个++x 也=3; 因为x的内存地址不变.第二个++x加了1后=3.第一个++x也会改变自身的值.所以:结果=9 在visual C++6.0编译后结果=9 ...

...main() { int x=1,y=3; printf("%d,",x++); { int x=0;x+=y*2...
22)以下程序的输出结果是 main(){ int x=1,y=3;printf("%d,",x++); \/\/先取值再自加 输出 1,但是x的值已经变成了2 { int x=0;x+=y*2; \/\/新的x变量,外面一层的 x被 屏蔽, x=6 printf("%d,%d, ",x,y); \/\/输出 6,3 } printf("%d,%d\n",x,y...

...main() { int x=1,y=2,z=0; if(x=2)z=x,x=y,y=z; printf("%d,%d\\n...
将条件符号z=x,x=y,y=z;改成z=x;x=y;y=z;后 程序执行如下 先给x赋值1,y赋值2,z赋值0;判断x=2是真是假,为真执行下面的语句 z=x;x=y;y=z;将x被赋值为2的值赋值给z,将y等于2的值赋值给x,将z等于2的值赋值给y 结果输出 x=2,y=2;...

...main() { int x,y,z; x=y=2;z=3; y=z++-1; printf(%d\\t%d\\t”,x...
①int main()而不是void main()②printf时,内部的双引号必须是英文的,你用的中文的就要错。以下是大概修补后的代码。include<stdio.h>int main() {int x,y,z;x=y=2;z=3;y=z++-1;printf("%d\\t%d\\t",x,y);y=++x-1;printf("%d\\t%d\\n",x,y);y=z---1;printf("%d\\t%d\\...

相似回答
大家正在搜