linearSearch(int list[], int size, int key)
/*这个函数返回列表中key的位置*/
/*如果key值没有找到,则返回-1*/
{
int index,found,i;
index=-1;
found=FALSE;
i=0;
while(i<size && **!found**)
{
if(list[i]==key)
{
found=TRUE;
index=i;
}
i++;/*转到列表中的下一项*/
}
这里!found的用法真不太懂
!不是取反吗?found的反是什么呢?让人疑惑。
found的反就是FALSE的反?可这又不是个数。
当found的值变成TRUE的时候,也就是“!found”为假的时候,这又要怎么解读呢?
希望能得到详细的解答
条件的相反值
found和!found是互斥的。
如果found为真,那么!found就是为假。
如果found为假,那么!found就是为真。
非0数在逻辑上是true哦
有帮助的话采纳一下哦!
!是逻辑取反运算符
就是如果found的值是TRUE, !found的结果为FALSE
如果found的值是FALSE, !found的结果为TRUE
也就是TRUE变成FALSE,FALSE变成TRUE
found是你声明的一个变量,而叹号!是取反的意思,也可以理解为就是 if (found==0) 的意思。
found是一个数,只要大于0就为真,!取反后就是只要found大于0,!found就为假