有以下程序 main(){int a=-2,b=0; while(a++&&++b); printf("%d,%d\n",a,b);} 程序运行后输出结果是

admin2017-05-20  35

问题 有以下程序
    main(){int a=-2,b=0;
    while(a++&&++b);
    printf("%d,%d\n",a,b);}
    程序运行后输出结果是

选项 A、0,3
B、1,2
C、1,3
D、0,2

答案B

解析 循环体为空,共执行2次。第一次变量a初值为-2,b初值为0,表达式a++&&++b值为1,同时a的值为-1,b的值为1,第二次循环条件判断以后,a的值为0,b的值2,执行循环体空,第三次判断条件表达式值为0,不执行循环体,而a的值为1,但是表达式卅的值为0,因此不计算表达式++b的值,b的值仍为2。
转载请注明原文地址:https://kaotiyun.com/show/FaDp777K
0

最新回复(0)