展开全部
答案是 A
因为 在 if 语句里有 a++ 自增表达式,此句结束后 a 的值是 10 了, 因为 a 初始值是 9,走else
分支, a-- 是先取值再自减,所以a 的值还是10
因为 在 if 语句里有 a++ 自增表达式,此句结束后 a 的值是 10 了, 因为 a 初始值是 9,走else
分支, a-- 是先取值再自减,所以a 的值还是10
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
选 A)10
因为:输入a=9时,if语句判断的时候把a++,使a=10,则执行else语句,输出a=10。然后再将a减去1,如果此时再在后面加上printf (“%d\n",a),那么输出的就是9.
因为:输入a=9时,if语句判断的时候把a++,使a=10,则执行else语句,输出a=10。然后再将a减去1,如果此时再在后面加上printf (“%d\n",a),那么输出的就是9.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
优先级问题:++优先于<可以等价于(a++)<9,后自增则a++值为9,(a=10)不满足if条件,而a--,先使用a即打印10,后再减1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
10。首先判断if(a++<9)。此时a++表达式的值为9,显然不成立。运行完此语句之后,a的值变成了10.然后运行else语句,此时表达式a--的值为10,那么输出的为10.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a++,的意思是先把a+1后再判断,很明显,a++=10,比9小,所以if语句里面为真,输出a,而此时的a=10;;;;++a 则是先判断a,然后再++
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询