> 文档中心 > 第二章 条件判断语句(分支语句)& 循环语句(上)| C语言[0基础 入门 保姆级别 通俗易懂 教程]

第二章 条件判断语句(分支语句)& 循环语句(上)| C语言[0基础 入门 保姆级别 通俗易懂 教程]


第二章 条件判断语句分支语句)& 循环语句(上)| C语言[0基础 入门 保姆级别 通俗易懂 教程]

在这里插入图片描述


作者介绍:

🎓作者:热爱编程不起眼的小人物🐐
🔎作者的Gitee:代码仓库
📌系列文章推荐:实现Strcpy函数 - 通过函数发现 “程序之美” | 不断优化、优化、再优化~
📒我和大家一样都是初次踏入这个美妙的“元”宇宙🌏 希望在输出知识的同时,也能与大家共同进步、无限进步🌟


文章目录

  • 第二章 条件判断语句(分支语句)& 循环语句(上)| C语言[0基础 入门 保姆级别 通俗易懂 教程]
  • 前言
  • 一、浅尝条件判断语句(分支语句)和循环语句
    • Ⅰ.语句
  • 二、条件判断语句(选择结构)
    • Ⅰ.If语句
    • Ⅱ.Switch语句
  • 总结

前言

可以说下列我们即将所接触到的语句在学习C语言的过程中有着密不可分、千丝万缕的关系哦~
不仅可以跟好地帮助我们读懂、学习别人优秀地代码,更能更近一步提升自己地代码能力哦~

以下内容干货满满,跟上步伐吧~


一、浅尝条件判断语句(分支语句)和循环语句

让我们一同看看在初步接触C语言中经常运用到的语句吧!

可以说这些语句在学习C语言的过程中有着密不可分、千丝万缕的关系哦~
只有我们扎实好基础,才能更好地建设上层建筑!!!

条件判断(分支语句)

  • if 语句
  • switch 语句

循环语句

  • while 语句
  • for 语句
  • do while 语句

go to 语句


在真正进入了解C语言的分支和循环语句中,我们得先了解了解什么是“语句”

Ⅰ.语句

C语言中语句可分为以下五类:

  1. 表达式语句
  2. 函数调用语句
  3. 控制语句
  4. 复合语句
  5. 空语句
而本文介绍的是: 控制语句

C语言中控制语句可分为以下三类:

  1. 条件判断语(分支语句):if语句、switch语句;
  2. 循环执行语句 : do while语句、while语句、for语句;
  3. 转向语句:break语句、goto语句、continue语句、return语句;

二、条件判断语句(选择结构)

Ⅰ.If语句

  1. If语句的语法结构
if( 表达式 )    语句;if( 表达式 )    语句1;else    语句2;    //多分支的情况if( 表达式1 )    语句1;else if( 表达式2 )    语句2;else if( 表达式3 )语句3;……else    语句n;

!!!特别注意 !!!

在执行单语句的时候,可忽略“{ }”去括住单条语句;

但在执行多条语句的的时候,我们应当用“{ }”去括住多条语句;

一对“{ }” 所括住的是 一个代码块

  1. 理论存在,实践开始:
int main(){int age = 61;if (age < 18)printf("青年");else if (age <= 26)   printf("壮年");else if (age <= 60)printf("老年");else    //与 else if一样 条件都是 建立在 上一条语句条件 的基础上 进行else的 printf("长命百岁");return 0;}

在这里插入图片描述

补充:else语句会自动与距离近的if语句相匹配

int main(){    int a = 0;    int b = 2;    if(a == 1) if(b == 2)     printf("hehe\n");    else //虽然看上去这里的 else语句是与第一个if语句格式是相对应的    //实质:是与距离近的if相匹配,即第二个if所对应匹配 printf("haha\n");    return 0;}
int main(){    int a = 0;    int b = 2;    if(a == 1)    {    if(b == 2)    {    printf("hehe\n");    }  else     {     printf("haha\n");    } } return 0;}
所以在初学阶段形成一个良好的书写习惯很重要哦~

Ⅱ.Switch语句

  1. Switch语句的语法结构
switch(整型表达式) //!!!注意这里,只能放“整型表达式”哦{   //不能放“浮点型哦”    语句项;    //语句项是一些case语句://如下:case 整形常量表达式:    语句;}
  1. break语句在switch语句中的使用

在switch语句中,我们没办法直接实现分支,搭配break使用才能实现真正的分支

int main(){    int day = 0;    switch(day)   { case 1:     printf("星期一\n");     break; case 2:     printf("星期二\n");     break; case 3:     printf("星期三\n");     break;     case 4:     printf("星期四\n"); //switch这样搭配break来使用     break;      //便可以在选择并输出内容后,跳出switch语句不再打印后面的内容 case 5:     printf("星期五\n");     break; case 6:     printf("星期六\n");     break; case 7:     printf("星期天\n");  break;   }    return 0;}

在这里插入图片描述

但如果想更好地优化上述的代码
我们还可以:

  1. 输入1-5,输出的是“weekday
  2. 输入6-7,输出“weekend"
int main(){    int day = 0;    switch(day)   { case 1: case 2: case 3: case 4:     //也正是运用了break在switch中的作用: case 5:  //只要没见到break,程序便一直走下去直至遇见break跳出去     printf("weekday\n");     break; case 6: case 7:     printf("weekend\n");     break;   }    return 0;}

在这里插入图片描述

break语句实际效果是把语句列表划分为不同的分支部分

  1. default子句在switch语句中的使用

如果表达的值与所有的case标签的值都不匹配怎么办?
其实也没什么,结构就是所有的语句都被跳过而已。
程序并不会终止,也不会报错,因为这种情况在C中并不认为是个错误。

但是,如果我们并不想忽略不匹配所有标签的表达式的值时该怎么办呢?
我们便可以在语句列表中增加一条default子句

综上:在输入与现有的case标签不合的情况下,switch语句便会将这一类“错误的标签”自动归类到default子语句上,输出default子句的内容


总结

综上,我们已经基本了解了C语言中语句的 “条件判断语句(分支语句)”
但这,仅仅是 甜头🍭 ,后续还会带领大家更加的深入语句的相关知识哦~

💫如果有错误❌,欢迎指正呀💫
✨如果觉得收获满满,可以点点赞👍支持一下哟~✨
在这里插入图片描述