if()括号里不是为0才执行吗? if(exit),也即是if(exit==1)为什么也行?感谢。
#include <stdio.h>
int main ()
{ int exit =0;
int i;
int one,two,five;
scanf("%d", &i);
for(one=1;one<i*10;one++){
for(two=1;two<i*10/2;two++){
for(five=1;five<i*10/5;five++){
if(one+two*2+five*5==i*10){
printf("可以用%d个1角和%d个2角和%d个5角凑齐%d元",one,two,five,i);
exit=1;
break;
}
}if(exit ) break;
}if(exit) break;
}
return 0;
}
C语言里,0 表示逻辑假,即条件不满足。1 或 非0 表示逻辑真,即条件满足,-1 或是一切 非0 数字都为真。
if(0) 即 if(假) = if(条件不满足),后面语句不被执行。
if(1) 即 if(真) = if(条件满足) ,后面的语句被执行。
if()括号里不是为0才执行吗
错
为0是false,不执行,非0是true
为0不执行