if 是C语言中的条件判断语句,可以构成三种分支结构。单分支结构,双分支结构,多分支结构。此外if可以嵌套使用,可构成更加深层次的逻辑结构。

 

单分支

判断为真则执行if语句,否者跳过该语句

#include <stdio.h>

int main(void)
{
	int a=0;

	if(1 == a)
	{
		printf("a = 1\n");
	}
	printf("a = %d\n",a);
	return 0;
}

 

双分支

判断为真则执行if语句,否者跳过该语句并执行else语句。

#include <stdio.h>

int main(void)
{
	int x=1,y=2;

	if(x > y)
	{
		printf("x > y\n");
	}
	else
	{
	    printf("x <= y\n");
	}
	return 0;
}

 

多分支

先判断if条件,不成立则判断下一个elseif。直到判断条件成立执行语句,或者执行else。

#include <stdio.h>

int main(void)
{
	int x=0;
	printf("number:");
	scanf("%d",&x);
	if(x > 100)
	{
		printf("100+\n");
	}
	else if(50 <= x <= 100)
	{
		printf("50-100\n");
	}
	else
	{
		printf("50-\n");
	}
	return 0;
}

 

if语句可嵌套使用

即if语句中包含if判断,可构成更加深层次的逻辑结构。

#include <stdio.h>

int main(void)
{
	int x=0;
	printf("number:");
	scanf("%d",&x);
	if(x > 100)
	{
		if(x < 150)  printf("101-149\n");
        else printf("150+\n");
	}

	else
	{
		if(50 <= x <= 100) printf("50-100\n");
        else printf("50-\n");
	}
	return 0;
}