以下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基础课程》。