下列程序的执行结果是( )。 #include main() { int a,b,C; a=b=2,c=1; c=(a++)-1;printf("%d,%d",a,c); c+=-a+++(

admin2012-12-03  26

问题 下列程序的执行结果是(    )。
    #include
    main()
{  int a,b,C;
       a=b=2,c=1;
       c=(a++)-1;printf("%d,%d",a,c);
       c+=-a+++(++b);printf("%d,%d",a,c);
    }

选项 A、3,14,1
B、3,14,2
C、2,04,1
D、2,14,1

答案A

解析 本题主要考查自加减运算符(++,--)的使用。①如果作为前缀变量“++a,--a”,在使用a之前,先使a的值加1或者减1,再使用表达式的值参与运算;②后缀变量“a++,a--”,先使用表达式的值参与运算,在使用a之后,再使i的值加1或者减1。在本题中计算表达式c=(a++)-1时先使用a的值进行计算,结果为c=2-1=1,然后将a的值加1,即执行完此旬后a的值是3;表达式c+=-a+++(++b)也可写成c=c+(-a++)+(++b),c=1+(-3)+3=1,此时a=4,b=3。
转载请注明原文地址:https://jikaoti.com/ti/VVB0FFFM
0

最新回复(0)