C语言基础结构——分支结构

前言

初学c语言,有错误的地方还望纠正,后续有了新的理解也会不断补充。

分支结构

能够通过采用合适的分支条件和分析程序流程使问题简单化的结构,通常适用于具有逻辑或关系比较等条件判断的计算。

分支结构又称选择结构,其中包括if  else判断语句和switch判断语句。

分支结构的基本类型包括:单一分支体,双(多)分支体,嵌套分支体。

1、if else

if else结构形式为

if (判断语句)
{
语句块1
}
else
{
语句块2
}
通过判断语句后:
判断为真(1)则运行语句块1
判断为假(0)则运行语句块2

当语句块中只有一条语句时可以不加花括号,但为了避免他人或自己在理解代码是发生偏差,并使代码更加规范,一般要求加上花括号。

当语句块2中没有语句时else可以省略。

(1)、单一分支体

由一组单一的if结构组成的分支体称为单一分支体。

如求a与b的较大值

#include <stdio.h>

int main()
{
    int a, b;
    scanf("%d %d",&a,&d);
     
    if(b > a)
    {
    a=b;
    }

    printf("两者中较大的数为%d",a);

    return 0;

(2)、双分支体

由一组if else结构组成的分支体称为单一分支体。

#include <stdio.h>

int main()
{
    int a, b;
    scanf("%d %d",&a,&b);
    if (a > b)
    {
    MAX = a;
    }
    else
    {
    MAX = b;
    }
    printf("两者中较大的数为%d", MAX);

    return 0;

(3)、多分支体

由两个及以上if else结构相连的分支体称为双(多)分支体。

如形式

if(判断语句)
{
语句块
}
else if(判断语句)
{
语句块
}else if(判断语句)
{
语句块
}
......

其中else可省

如判断分数

#include <stdio.h>

int main ()
{
    int score;
    printf("你的成绩是%d",score);
    scanf("%d",&score);
    
    if (score>=90)
    {
       printf("\n优秀");
    }else if (90>score>=80)
    {
       printf("\n良好“);
    }else if (80>score>=60)
    {
       printf("\n及格");
    }else if (60>score)
    {
       printf("\n不及格);
    }

    return 0;

(4)、嵌套分支

形式如

if (条件)
{
if (条件)
语句块;
else
{
if (条件)
语句块;
else
语句块;
}
}
else
语句块;
等类似的结构。

如判断a是否为最大值

#include <stdio.h>

int main ()
{
    int a,b,c;
    scanf("%d %d %d",&a,&b,&c);

    if (a>=b)
    {
       if (a>=c)
       {
          printf("a最大”);
       }
    }
    else
    {
     printf("a不是最大的");
    }

    return 0; 

(5)、浮空else问题

如果有多个 if 和 else ,可以记住这样⼀条规则, else 总是跟最接近的 if 匹配。

2、switch

结构表示为

switch(判断部分)
{
case x1:语句块1;break;
case x2:语句块2;break;
case x3:语句块3;break;
case ..:语句块..;break;
default :语句块n:break;
}

3、总结

以上为分支结构概述,以后会不断完善细节,也希望各位大佬多多指教。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值