A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

//c=2,a=2,b=3;d=2,a=3,b=2;e=0,a=2.b=3,
回复 使用道具 举报
int a=1,b=2,c,d,e;

c=(-a++)+(++b);
d=(b--)+(++a)-a;
e=(a/(++b))-(a/(--a));
请问a,b,c,d,e的结果是:____2、3、2、3、0___。
分析:
//(-a++),-与++同一级,又右结合,故先进行a++,而a++的值为1,++b的值为3,故-1+3=2;//此时a=2,b=3,c=2
c=(-a++)+(++b);
//根据优先级,括号中,从左到右,先算括号中得内容,括号中算b--,值为3,b=2,(++a)的值为3,a=3,故,最后得得式子为3+3-3=3
//此时,a=3,b=2,d=3
d=(b--)+(++a)-a;
//括号的优先级大于/,故此时b=3,++b=3,根据括号的结合性,先算第一个括号,此时第二个括号值还并未算,所以第一个扩号a=3,第一个括号中值算完后,第二个括号中--a=2,a=2,故e=1-1=0
e=(a/(++b))-(a/(--a));

所以a=2,b=3,c=2,d=3,e=0
回复 使用道具 举报 1 0

额。。。。。这个没回好,点错了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马