以下程序段的运行结果是( )int a=1;printf("%d, %d, %d\n", a, ++a, a++);

如题所述

假设m=++a,n=a++;则运行后,m=2,n=1(a=1)
++a:先执行a=a+1,再将a的值作为++a的值(此时a=2)
a++:先将a的值作为a++即n的值,再执行a=a+1(此时a=2)

你可以把这段话记下来,下次模糊了就看看,多看几次就记住了来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-17
输出为1 2 2
++a a先自加1再执行,a=2
a++ 此时a已经等于2,先执行后自加,先执行就输出2
第2个回答  2012-12-18
假设m=++a,n=a++;则运行后,m=2,n=1(a=1)
++a:先执行a=a+1,再将a的值作为++a的值(此时a=2)
a++:先将a的值作为a++即n的值,再执行a=a+1(此时a=2)来自:求助得到的回答
第2个回答  2012-12-18
1, 2, 2
相似回答
大家正在搜