我有下面的代码。但是,我认为4是答案。我对吗?
int a, i;
if (execute)
{
int count = 0;
for (i=0; i<5; i++)
{
if(pcnt[i]) count ++;
}
a = (count > 0)
}
else
{
a= 0;
}
对于 IF 情况,a 是 a=1 还是 a=4?
我有下面的代码。但是,我认为4是答案。我对吗?
int a, i;
if (execute)
{
int count = 0;
for (i=0; i<5; i++)
{
if(pcnt[i]) count ++;
}
a = (count > 0)
}
else
{
a= 0;
}
对于 IF 情况,a 是 a=1 还是 a=4?
将a
是1
或0
1
: 如果execute != 0
和count >0
0
: 否则
笔记:
count >0
当且仅当pcnt[0]!=0
或pcnt[1]!=0
或pcnt[2]!=0
或pcnt[3]!=0
或pcnt[4]!=0
首先,由于缺少分号,这不会编译。如果未正确声明变量也可能会遇到困难,但为了回答,我将假设它们已经正确声明。
现在,看看a
分配给什么。我看到a = (count > 0)
和a = 0
。Well(count > 0)
永远只会是 0 或 1(在 C 中布尔表达式将解析为 1 表示真,0 表示假)。所以基本上,你有a = 0 or 1
和a = 0
。这简化为a
0 或 1。