有以下程序 #include<stdio.h> main( ) int a= —1,b=—1; for(;+ +a;)+ +b; printf(″%d%d\n″,a,b); } 程序运行后的输出结果是( )。

admin2019-06-09  16

问题 有以下程序
#include<stdio.h>
main( )
int a= —1,b=—1;
for(;+ +a;)+ +b;
printf(″%d%d\n″,a,b);
}
程序运行后的输出结果是(    )。

选项 A、0 —1
B、0 0
C、—1  —1
D、结果不确定

答案A

解析 这是对for循环的基本考查。其中+ +a是判断条件,并且是a先自增1,再参与运算,a初值为—1,经+ +a后,a值为0,0相当于false,判断条件不成立,跳过for循环后面的语句++b,直接执行printf语句,所以最后输出a的值为0,b的值没变,还是—1。
转载请注明原文地址:https://jikaoti.com/ti/tzf0FFFM
0

最新回复(0)