问题
单项选择题
有以下程序
main()
int m=3 , n=4 , x ;
x=-m++;
x=x+8/++n ;
printf("%d\n",x);
程序运行后的输出结果是______。
A) 3 B) 5 C) -1 D) -2
答案
参考答案:D
解析: 在C语言中,++有前缀和后缀两种形式,它们的区别在于其表达式的值不同,前缀形式表达式的值为增加1后的值,而后缀表达式为增加1之前的值。本题中,首先执行x=-m++,此时x的值变成了-3,接着再执行x=x+8/++n,此时就变成了x=-3+8/5=-2。