main( ) {int x=10,y=10;int a,b,c;a=--x==y?++y:--x;b=x++;c=y
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/17 19:28:40
main( ) {int x=10,y=10;int a,b,c;a=--x==y?++y:--x;b=x++;c=y printf("%d %d %d\n"a,b,c)
请说一下详细过程 谢谢
请说一下详细过程 谢谢
main( )
{int x=10,y=10;
int a,b,c;
a=--x==y?++y:--x;
1)这里有四个运算符:=(赋值元素安抚)、--(自减运算符)、==(等于运算符)、?:(条件运算符),而由运算符的优先级从高到低有:--、==、?:、=.先计算--x后x=9,再计算等于运算符,等于运算符左右两边不相等,所以条件运算符第二个条件执行,即执行--x,然后x=8,也就是赋值运算符右边等于8,所以a=8,而且同时x=8,y=10;
b=x++;x++表示在使用x之后(即先将x的值赋给b),使x的值加1,所以此时b=8,x=9,y=10;
c=y ;将y的值赋给c,所以c=10,x=9,y=10;
printf("%d %d %d\n"a,b,c)
所以输出结果为8 8 10
再问: b=8还是不太明白。。是因为=的优先级比++高?所以先赋值再加。。?x++我知道是先赋值再加可是最后的结果是 b额。。。
再答: 不是那样理解的,自加运算符的使用。 对于i++(i--),和++i(--i)的不同之处在于: i++,i-- (在使用i之前,先使i的值加(减)1) 比如 i=3; j=i++; (先将i的值3赋给j,j的值为3,然后i变为4) 再如: i=3; printf("%d",i++); 先输出3,然后i的值再变为4; 而 i=3; j=++i; (先将i的值变为4,再赋给j,j的值为4) 再如: i=3; printf("%d",++i); i的值先变为4,然后输出4;
{int x=10,y=10;
int a,b,c;
a=--x==y?++y:--x;
1)这里有四个运算符:=(赋值元素安抚)、--(自减运算符)、==(等于运算符)、?:(条件运算符),而由运算符的优先级从高到低有:--、==、?:、=.先计算--x后x=9,再计算等于运算符,等于运算符左右两边不相等,所以条件运算符第二个条件执行,即执行--x,然后x=8,也就是赋值运算符右边等于8,所以a=8,而且同时x=8,y=10;
b=x++;x++表示在使用x之后(即先将x的值赋给b),使x的值加1,所以此时b=8,x=9,y=10;
c=y ;将y的值赋给c,所以c=10,x=9,y=10;
printf("%d %d %d\n"a,b,c)
所以输出结果为8 8 10
再问: b=8还是不太明白。。是因为=的优先级比++高?所以先赋值再加。。?x++我知道是先赋值再加可是最后的结果是 b额。。。
再答: 不是那样理解的,自加运算符的使用。 对于i++(i--),和++i(--i)的不同之处在于: i++,i-- (在使用i之前,先使i的值加(减)1) 比如 i=3; j=i++; (先将i的值3赋给j,j的值为3,然后i变为4) 再如: i=3; printf("%d",i++); 先输出3,然后i的值再变为4; 而 i=3; j=++i; (先将i的值变为4,再赋给j,j的值为4) 再如: i=3; printf("%d",++i); i的值先变为4,然后输出4;
main( ) {int x=10,y=10;int a,b,c;a=--x==y?++y:--x;b=x++;c=y
int func(int x,int y ) { return(x+y) } main() {int a=1,b=2,c
int x =10,y=9; int a,b,c; a= (x- -=y++)?x- -:y++; b=x++; c=y
int x =10,y=9; int a,b,c; a= (- -x=y++)?- -x:++y; b=x++; c=y
c语言函数int x,y; f() {int y,a=25,b=10; x=a+b
main() { int a,b,c,d,e; int x=5,y=6; a=1,b=2; c=(a+x)>(b+y);
#includeint a(int x);int b(int y);int main(){int m,n;n=6;m=a
、 #define M(x,y,z) x*y+z main() { int a=1,b=2,c=3; printf("%
fun(int x,int y,int z) {z=x*x+y*y;} main() {int a=31; fun(5,
变量a,b,c的值分别是?int x=10,y=9; int a,b,c; a =(- -x = = y++)?- -x
main() { int x=10; int y=x++; printf("%d,%d\n",(x++,y),y++);
define A(x,y) x*y-x/y main(){int a=5,b=2,y;y=A(a+b,a-b);prin