目录
(一)首先,在C语言中,分为三大控制结构,分别为顺序结构,分支与循环结构。
顺序结构:按照解决问题的顺序写出相应语句,自下而上,从左至右的运行。
分支结构:依据一定的条件选择执行的路径,不严格按照前后顺序运行。
循环结构:依据一定的条件重复执行某一句或几句代码,为反复做某操作而设置的一种程序结构。
(二)接下来向大家介绍选择中的if和switch语句
if语句有3种形式
1:if简单语句
if(表达式)
语句;
下面为一个实例:
#include <stdio.h>
main()
{
int HP=100;//定义HP即血量的值为100
scanf("%d",&HP);//从键盘输入一个数值,取地址给HP
if(HP<20)判断HP的值是否小于20
{
printf("英雄血量较低,请回城补充血量\n");//若HP的值小于20,则输出printf中的语句
}
return 0;
}
if()括号里面是表达式,一般是用于判断,需要注意的是if括号后不加分号;在语句后才加;
2:if-else型:
if(表达式)
语句1;
else
语句2;
下面为一个用if-else语句来判断a,b的大小,并输出a,b中最大的数
#include <stdio.h>
main()
{
int a,b,max;
scanf("%d%d",&a,&b);
if(a>b)//判断输入a,b两数的大小
printf("max=%d\n",a);//如果a大于b,则输出a的值
else//不然的话
printf("max=%d\n",b);//输出b的值
return 0;
}
3:if-else-if语句//如果表达式1不成立,继续判断判断表达式2是否成立,否则执行表达式n
if(表达式1) 语句1;
else if(表达式2) 语句2;
...
[else 语句n;] (写代码时不需要写大括号)
继续以英雄的血量为例:
#include <stdio.h>
main()
{
int HP=100;
scanf("%d",&HP);
if(HP<20)//如果输入的值小于20
{
printf("英雄血量较低,请回城补充血量\n");//则输出此语句
}
else if(HP>20&&HP<80)//如果输入的值大于20并小于80
{
printf("英雄血量健康,可以继续进行战斗");//则输出此语句
}
else//否则,即输入的值在80以上
{
printf("英雄的状态完好,请参加战斗,捍卫荣耀");//则输出此语句
}
return 0;
}
第二个选择是switch语句,switch语句中的switch像是一个总闸,控制着各个灯泡(图有点抽象)
基本形式:
switch(表达式)
{
case 常量表达式1: 语句组1; break;
case 常量表达式2: 语句组2: break;
...
default: 语句组n; break; (default可以当作或者理解)
#include <stdio.h>
main ()
{
int a=3;定义a的值为3
switch(a)
{
case 1: printf("1号灯泡亮\n"); break;若a的值为1,则1号灯泡亮
case 2: printf("2号灯泡亮\n"); break;若a的值为2,则2号灯泡亮
case 3: printf("3号灯泡亮\n"); break;若a的值为3,则3号灯泡亮
default: printf("其他灯泡亮\n"); break;若a的值不为1,2,3,为其他值,则4号灯泡亮
}
return 0;
}
需要注意的是case后面必须是常量,而这个常量应跟switch括号里面的表达式有关联,‘a’也是一个常量;case的语句组后应加上break,break表示的是一个语句的结束,阻断当前语句的继续进行,若不加break,则继续执行下一条语句。
这就是if语句和switch语句的基本用法及注意事项,若有什么错误或者不同意见,望各位大佬指点,毕竟我还是一个小白,哈哈。