if(表达式)表达式的值为1后面的程序执行,若为0则不执行。
比如if(1>2)其中1>2是个逻辑判断,1<2当然是假,所以就是false(false为0,true为1),但cpu不认false只认0和1,所以1《2的逻辑返回值就是0,所以if(0)等价于if(1>2),其他的同理。
还有一种就是if(5),c语言默认if(判别的返回值)是0就不执行,不是0就是执行!所以if(5)等同于if(1)也就是说if(表达式结果为0(逻辑判断只返回0和1,但若是某个数值则不为0则当做是1))。
所以f(0)等价于f(1<2)等价于f((1+4)<9),f(!1)等,不执行。
if(1)相当if(5),if(1<2);
int a=0;
if(1)执行;
a=3;结果a=3;
if(0)不执行跳过;
a=4;
else a=5;执行a=5;
扩展资料:
C语句常用语句:
一,表达式语句
表达式语句由表达式加上分号“;”组成。
其一般形式为:表达式;执行表达式语句就是计算表达式的值。
例如: x=y+z;a=520;赋值语句;
y+z;加法运算语句,但计算结果不能保留,无实际意义;
i++; 自增1语句,i值增1。
i++; 是先运算i后再加1。
++i; 是先把i值增1后运算。
二,函数调用语句
由函数名、实际参数加上分号“;”组成。
其一般形式为: 函数名(实际参数表) ;
执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数,然后执行被调函数体中的语句,求取函数值。
调用库函数,输出字符串。
例如:
printf(a,b,c);
三,控制语句
控制语句用于控制程序的流程, 以实现程序的各种结构方式。
它们由特定的语句定义符组成。C语言有九种控制语句。 可分成以下三类:
(1). 条件判断语句
if语句、switch语句;
(2) .循环执行语句
do while语句、while语句、for语句;
(3). 转向语句
break语句、goto语句(此语句尽量少用,因为这不利结构化程序设计,滥用它会使程序流程无规律、可读性差)、continue语句、return语句。
条件判断
int x,y;
if(x>y)
printf("x,\n");
else
printf("y,\n");
四,复合语句
把多个语句用括号{}括起来组成的一个语句称复合语句。 在程序中应把复合语句看成是单条语句,而不是多条语句,例如
{
x=y+z;
a=b+c;
printf(“%d%d”,x,a);
}
是一条复合语句。复合语句内的各条语句都必须以分号“;”结尾;此外,在括号“}”外不能加分号。
五,空语句
只有分号“;”组成的语句称为空语句。空语句是什么也不执行的语句。在程序中空语句可用来作空循环体。
例如 while(getchar()!='\n'); 本语句的功能是,只要从键盘输入的字符不是回车则重新输入。这里的循环体为空语句。