有以下程序: #include main() { int a=1,b=1; for(;a一一;) b一一; printf("%d,%d\n",a,b); } 程序运行后的输出结果是(

admin2019-01-11  42

问题 有以下程序:
    #include
    main()
    {  int a=1,b=1;
    for(;a一一;)
    b一一;
    printf("%d,%d\n",a,b);
    }
    程序运行后的输出结果是(    )。

选项 A、一1,0
B、0,0
C、一1,一1
D、1,1

答案A

解析 题干中语句for(;a一一;)的执行过程是,先判断表达式a一一是否为0,因为运算符“一一”在变量的后面,表示先进行其他操作,再让变量a减1,即判断a!=0成立,则进入循环,然后a减1,起始a=1不等于0,满足条件进入for循环,然后a自减1为0,b自减1为0,继续循环;再跳回for语句时,a!=0不成立,不会进入循环,但是a也要自减1为一1,循环结束;故最后输出a=一1,b=0,因此答案为A选项。
转载请注明原文地址:https://kaotiyun.com/show/c7xp777K
0

最新回复(0)