C语言中的选择语句

选择语句

在C语言中选择语句又叫分支语句,有if型,if...else型和Switch型。

if型的语法结构为:

if(表达式)
    语句;

例如:

#include
int main()
{
  int age=20;
  if(age<18)
  printf("未成年\n");
  return 0;
}

在此代码中如果age<18,输出未成年,age>=18,则什么也不输出。

if...else型语法结构:

if(表达式)
   语句1;
else
   语句2;

例如:

#include
int main()
{
  int age=18;
  if(age<18)
     printf("未成年\n");
  else
     printf("成年\n");
  return 0;
}

此代码中如果age<18,则输出未成年,若age>=18,则输出成年。

在此种语句下还有一种悬空else的情况,例如:

#include
int main()
{
  int a=0;
  int b=2;
  if(a==1)
    if(b==2)
      printf("hehe\n");
    else
      printf("haha\n");
    return 0;
}

此代码无输出结果,因为else只和离它最近的未匹配的if进行匹配。判断得到a不等于1后,直接返回0值,下面的if和else自动匹配,变成第一个if内的语句。所以以后写代码时要避免这种写法,最好用{}来区分它们的范围。另外if型语句超过一句要用{}把它们括起来,防止计算机解析代码错误。

Switch型语法结构:

Switch(整型表达式)
{
  case 整型常量表达式:
        语句;
}

例如:

#include
int main()
{
	int day = 0;
	scanf("%d", &day);
	switch (day)
	{
	case 1:
	case 2:
	case 3:
	case 4:
	case 5:
		printf("工作日\n");
		break;
	case 6:
	case 7:
		printf("休息日\n");
		break;
	default:
		printf("输入错误\n");
		break;
	}
	return 0;
}

在此代码中,day输入1,它进入case 1,然后一直往下进入2,3,4,5,到case 5后打印出“工作日”,然后break,跳出语句。day输入7,则它进入case 7,打印“休息日”,然后break,跳出语句。当输入的数字不是1~7时,它就进入default语句,打印“输入错误”,然后break跳出语句。

在Switch语句中,default位置不固定,一般在没有这种情况时使用。

在Switch语句中,case决定入口,break决定出口。


这次的分享结束啦,希望能对初学者有一定的帮助。

C语言中的选择语句_第1张图片

 

你可能感兴趣的:(c语言,c++,开发语言)