急!C++程序运行的结果是?void main() {int m=5;if (m++>5) cout<<m<<endl;else cout<<m--<&
答案:2 悬赏:60 手机版
解决时间 2021-02-21 08:07
- 提问者网友:我是女神我骄傲
- 2021-02-20 21:32
急!C++程序运行的结果是?void main() {int m=5;if (m++>5) cout<<m<<endl;else cout<<m--<<endl;}请解释
最佳答案
- 五星知识达人网友:掌灯师
- 2021-02-20 22:56
m++>5//m =5 该条件不成立
执行else
但此时m =6 所以输出6
执行else
但此时m =6 所以输出6
全部回答
- 1楼网友:慢性怪人
- 2021-02-20 23:33
最后肯定输出的是m+1的值,即6
分清 m++ ++m , 它们作为单个表达式的值是不一样的,前者为m的值,后者为m+1的值,但运行它们之后的效果是一致的,即让 m = m + 1。
m-- 与 --m的区别也同上,不过是减1的区别
因此,第一个if
等价于 if(m > 5) (同时让m = m + 1),
判断完毕后m已经变为6,
因为条件不成立,所以走else分支,输出m--(即m的值6,别忘记了之后m要减1)
如果程序最后再来个让你输出m的值,则m = 5
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
正方形一边上任一点到这个正方形两条对角线的 |
阴历怎么看 ? |