📜  C |回路和控制结构|问题11

📅  最后修改于: 2021-05-25 18:45:10             🧑  作者: Mango

以下C程序的输出?

#include
int main()
{
    int i = 0;
    for (printf("1st\n"); i < 2 && printf("2nd\n"); ++i && printf("3rd\n"))
    {
        printf("*\n");
    }
    return 0;
}

(A) 1日
第二名
*
第三名
第二名
*

(B) 1日
第二名
*
第三名
第二名
*
第三名

(C) 1日
第二名
第三名
*
第二名
第三名

(D)第一
第二名
第三名
*
1号
第二名
第三名

答案: (B)
说明:这只是for循环中语句的一对一执行。
a)初始语句仅执行一次。
b)在打印“ *”之前先打印第二个条件。第二条语句还具有短路逻辑&&运算符,仅当’i’小于2时才打印第二部分
b)在打印“ *”之后打印第三条语句。这也具有短路逻辑&&运算符,仅当’++ i’不为零时才打印第二部分。

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。