前言
C语言是一门结构化的语言,它可分为顺序结构,选择结构和循环结构。
本文就介绍了C语言中的选择结构的部分也就是分支语句的基础内容
一、分支语句是什么?
分支语句就是选择结构,它可以根据你所设置的不同的选项,输出对应你所设置的结果。例如:
你选择好好学习C语言,你就能有更好的前程,
你选择三天打鱼两天晒网的学,你就会碌碌无为。
这就是选择。
而语句就是用分号(英文的;)隔开的就是一条语句。
二、使用的方式
1.if else
if else是C语言中分支语句的一种,从字面意思也好理解,如果()~~其他~~
这里,我们用年龄举例,代码如下:
#include<stdio.h>
int main()//建立主函数
{
int i = 16;//先整型变量i给一个初始数值
if (i <= 17)//如果i小于等于17的话
{
printf("未成年\n");//打印未成年(\n)代表回车到下一行
}
else//如果没满足上面的条件i<=17的话顺序到这里,也就是其余的情况的意思
{
printf("成年\n");//打印成年
}
return 0;
}
{}是可以包含多条语句,用来区分出函数的作用范围。
else 是和它最近的那个if匹配,所以一般使用{}来确定范围
如果表达式为真就执行
在C语言中:0表示假,1表示为真
当我们判断事情是真假时可以使用==,例如
int main ()
{
int i = 3;
if (i == 5)
{
printf("yes");
}
return 0;
}
这个函数由于i的初始数值是3不等于5,结果就是不输出。实际操作过程中可能会少漏了一个等号从而变成赋值,结果就是输出错误结果打印出了yes
int main ()
{
int i = 3;
if (i = 5)//这时i=5了
{
printf("yes");
}
return 0;
}
所以,在整型变量与常量进行比较时,我们可以把常量放在前面 ,这样即使你少打了一个=号,也不会输出错误结果,而是会报警
所以,在与常量比较中,我推荐把常量放在比较的前面。
这时你就可以练习一下这个函数了,如
判断一个数是不是奇数
打印1-100之间的奇数
int main ()
{
int i = 0;
for (i=1;i<=100;i++)
if (i % 2 == 1)
{
printf("%d ", i);
}
return 0:
}
if else 不仅仅只能做两个选项的选择也可以进行多个选项的选择结构是
if(){}
else if(){}
else if(){}
else {}
其中else if 可以一直加,还是拿刚刚的年龄举例
int main()
{
int i = 16;
if (i<14)
{
printf("小孩\n");
}
else if (i < 18)
{
printf("青少年\n");
}
else if (i<30)
{
printf("青壮年\n");
}
else if (i < 60)
{
printf("壮年\n");
}
else if (i < 80)
{
printf("老年\n");
}
else if (i < 100)
{
printf("老寿星\n");
}
return 0;
}
其实你们也发现了,这样写其实有些麻烦,这种情况,我们就一般使用switch来解决。
2.switch
switch语句也是一种分支语句。它常常用于多分支的情况。
例如你想输出数字几就出星期几
1:星期一
2:星期二
3:星期三等
代码如下(示例):
int main()
{
int day = 0;
scanf("%d", &day);
switch(day)
{
case 1 :
{
printf("星期一\n");
break;
}
case 2:
{
printf("星期二\n");
break;
}
case 3:
{
printf("星期三\n");
break;
}
case 4:
{
printf("星期四\n");
break;
}
case 5:
{
printf("星期五\n");
break;
}
case 6:
{
printf("星期六\n");
break;
}
case 7:
{
printf("星期天\n");
break;
}
default:
printf("输入错误\n");
break;
}
return 0;
}
switch的运算逻辑是一直往下走的,如果每个选项中不加break,它将会执行包括它对应的选项之后的每一个选项。
在switch中如果不加break就没办法实现分支,必须搭配break来使用才能真正做到分支。
break的实际效果就是把语句列表分割给不同的分支部分。
default的作用是除了选项中的输入,其他的输入就到这个分支中来。default的位置可以任意,只要它能满足你的需求的前提下,不过我们一般把它放在后面,如果不加函数也不会报错,这也不是一个错误,只是会忽略这个值,结果就是所有语句被跳过。
因此根据这个特性,我们如果想输入工作日和周末之分的话就可以输入成
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;
}
编程好习惯
在每一个switch语句中都放一个default子句,里面还可加个break。
最后我在这里放一串代码,你们可以解一下结果是多少
总结
以上就是今天要讲的内容,本文只是简单的介绍了if else和switch 的分支语句的使用方法,实际编程中将会经常结合多种函数来使用。希望这篇文章能够帮你理解分支语句的结构和使用。