以下程序的输出结果是 main() {int a=100,x=10,y=20,ok1=5,ok2=0; if(x < y) if(y!=10) if(!ok1) a=1; else

if(ok2) a=10; a=-1; printf(&quot;%d尀n&quot;,a); }中的if(!ok1)是什么意思啊
2025-03-24 09:33:59
推荐回答(4个)
回答1:

if是条件,if()里面是判别,当里面为真,也就是值为1的话就执行,否则不执行,你ok1=5,那么在条件语句里值就为1,(真)如果为0的话就是假!!!
!是逻辑非,ok1=5(在if里就是1,意为真),!ok1意思就是ok1=0(在if里就是假)
所以不执行!!!!
结果应该是-1

回答2:

if(!ok1)就是说,当ok1为假(即值为0)时执行if后面的语句。

回答3:

"!"表示否定,“if(!ok1)”表示:如果不等于ok1 。。。

回答4:

ok1 =5;
!ok1 = 0
if(!ok1)里的代码就肯定不会执行咯。