1.以下程序输出结果是( ) main() { int m=5;if(m++>5) printf("%d",m);else printf("%d\n",m--);

如题所述

main()
{
int m=5;
if(m++>5) //m++,此时先使用m=5去比较,结果为假,跳到else,但是m还要加1变为6,即m=6
printf("%d",m);
else printf("%d\n",m--);//m--,此时先使用m=6去输出,然后m还要减1变为5,即m=5
}
所以输出结果为:6
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-19
6
先是if(m++>5),m是先取值5作if判断,再++变成6。if不成立,所以执行printf("%d\n",m--);同样是先取m的值6输出,再--本回答被提问者和网友采纳
第2个回答  2011-11-28
=6, ++和--运算符放在变量前后是不一样的。放在前先加,放在后先引用变量值,再加。
此处(m++>5)可分解成m>5;m=m+1;所以到else了。
第3个回答  2011-11-29
6
第4个回答  2011-11-28
6
相似回答