您能否证明以下代码的输出是正确的:
#include <stdio.h>
void main()
{
int i,A[]={0,5};
for(i=0; i<2 && (A[i]==5) ;i++)
printf("%d",i);
}
据我说,输出应该是1。 但是在运行代码时,我没有得到任何输出。 你能解释一下发生了什么吗? 我是编程新手,更喜欢非复杂的答案。
答案 0 :(得分:2)
因为当A[i]==5
为i
时,表达式0
为 false 。真和假是错误的,所以循环永远不会运行。