为什么答案会是2,0,3的?求详细解析,谢谢O(∩_∩)O谢谢。。
a=b=1 //此时a值为1,b值为1;
a++ //a自增为2
b+1 //不对b的值产生任何影响
c=a+b-- //首先,b--优先运算,运算结果是1,然后b自减为0,此时a值为2,再算c,所以c值 为 a+(b--)值为2+1=3追问
a++ //a自增为2
b+1 //不对b的值产生任何影响
c=a+b-- //首先,b--优先运算,运算结果是1,然后b自减为0,此时a值为2,再算c,所以c值 为 a+(b--)值为2+1=3追问
哦,谢谢O(∩_∩)O,可以再回到我一个问题么?就是:执行语句:for(i=1;i++<4 ;)后,变量i的值是()?为什么答案是5的?
追答i=1时,i++值为1,而i自增为2
i=2时,i++值为2,而i自增为3
i=3时,i++值为3,而i自增为4
i=4时,i++值为4,此时明显不符合4<4,所以跳出循环,但是i已经又自增了,已经变为了5
所以i跳出循环时值为5
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-03-25
a=b=1,//a=1 b=1 c=0
a++, //a=2 b=1 c=0
b+1, //a=2 b=1 c=0
c=a+b-- //a=2 b=0 c=3
//----------------------区别(i++)和(++i)-------给你个例子
int i=1;
int y=i++;// y=1 i=2 //i--同理
int i=1;int y=++i;// y=2 i=2 //--i同理追问
a++, //a=2 b=1 c=0
b+1, //a=2 b=1 c=0
c=a+b-- //a=2 b=0 c=3
//----------------------区别(i++)和(++i)-------给你个例子
int i=1;
int y=i++;// y=1 i=2 //i--同理
int i=1;int y=++i;// y=2 i=2 //--i同理追问
O(∩_∩)O谢谢。。好详细
追答O(∩_∩)O~呵呵,客气
本回答被提问者和网友采纳