早教吧 育儿知识 作业答案 考试题库 百科 知识分享

主要不明白a的值,括号里我知道是赋值语句,但是y的值怎么算到5的?请具体说明运算顺序!谢谢!#include<stdio.h>intmain(){inta,b,c;intx=5,y=10;a=(--y=x++)?-y:++x;printf("%d,%d\n",x,y);b=y++;c=x;p

题目详情
主要不明白a的值,括号里我知道是赋值语句,但是y的值怎么算到5的?请具体说明运算顺序!谢谢!#include<stdio.h> int main() { int a,b,c; int x=5,y=10; a=(--y=x++)?-y:++x; printf("%d,%d\n",x,y); b=y++; c=x; printf("%d,%d,%d",a,b,c); }
▼优质解答
答案和解析
#include int main() { int a,b,c; int x=5,y=10; a=(--y=x++)?-y:++x;//--y得y=9,然后y=x++,即y=5,x=6,接着5?成立a=-y=-5 printf("%d,%d\n",x,y);//最后x=6(只计算x++,++x未算) ,y=5(--y,y=x++即y=5) b=y++...