下列程序的输出结果为( ) void main() { int x, y, z; x = y = 1; z = x++,
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/04/29 16:27:55
下列程序的输出结果为( ) void main() { int x, y, z; x = y = 1; z = x++, y++, ++y; printf(“%d, %d,
下列程序的输出结果为( )
void main()
{ int x, y, z;
x = y = 1;
z = x++, y++, ++y;
printf(“%d, %d, %d\n”, x, y, z);
}
选择一个答案
a. 2, 3, 3
b. 2, 3, 2
c. 2, 3, 1
d. 2, 2, 1
下列程序的输出结果为( )
void main()
{ int x, y, z;
x = y = 1;
z = x++, y++, ++y;
printf(“%d, %d, %d\n”, x, y, z);
}
选择一个答案
a. 2, 3, 3
b. 2, 3, 2
c. 2, 3, 1
d. 2, 2, 1
c
首先赋值后,x=1,y=1
z = x++,y++,++y;
先执行z=x++=1,后面的y++,++y是逗号表达式,赋值优先级高于它
当输出后x=2,y=3;(x自加了一次,y自加了2次)
再问: z = x++, y++, ++y; 我理解的是逗号表达式并列,取最后一个++y=2
再答: 错了,是先进行z的赋值语句,z是取第一个逗号的啦,在进行y的自加 因为逗号优先级低于“=”(赋值),所以 z = x++, y++, ++y; 就是一个逗号语句,z=x++是一条,y++,是一条++y是一条,按顺序执行 如果z = (x++, y++, ++y);那么答案就是楼下十一级回答的那样
首先赋值后,x=1,y=1
z = x++,y++,++y;
先执行z=x++=1,后面的y++,++y是逗号表达式,赋值优先级高于它
当输出后x=2,y=3;(x自加了一次,y自加了2次)
再问: z = x++, y++, ++y; 我理解的是逗号表达式并列,取最后一个++y=2
再答: 错了,是先进行z的赋值语句,z是取第一个逗号的啦,在进行y的自加 因为逗号优先级低于“=”(赋值),所以 z = x++, y++, ++y; 就是一个逗号语句,z=x++是一条,y++,是一条++y是一条,按顺序执行 如果z = (x++, y++, ++y);那么答案就是楼下十一级回答的那样
下列程序的输出结果为( ) void main() { int x, y, z; x = y = 1; z = x++,
求下列程序的运行结果main(){int x=6,y,z;x*=18+1;printf("%d,",x--);x+=y=
阅读下面程序写出执行或输出结果:#define M(x,y,z) x*y+z main() { int a=1,b=2,
以下程序的输出结果是 #include void prt (int *x,int*y,int*z){ printf("%
void main() { int x=0,y=5,z=3; while(z-->0&&++x
#include void main() { int x=0,y=1,z=2; if(!x) z=-1; if (y)
void main(){int x=1,y=3,z=5;printf("%d",z>y>x);}
下列程序运行结果为() main() { int x=20,y; y=2
#include void main() { int x=0,y=0,z=0; ++x||++y&&++z; print
x=y==z?#include"stdio.h" void main() { int x,y,z; x=2; y=x+2
void main() {char x=3,y=6,z; z=x^(y
fun(int x,int y,int z) {z=x*x+y*y;} main() {int a=31; fun(5,