【学习笔记之我要C】if分支语句与switch分支语句

简介: 【学习笔记之我要C】if分支语句与switch分支语句

一、if分支语句

int main () {
  /*
  格式1:
  if(表达式)
    语句;
  格式2:
  if(表达式)
    语句1;
  else
    语句2;
  格式3:
  if(表达式)
    语句1;
  else if
    语句2;
  if
    语句3;
  */
  return 0;
}

ifelse可以不跟{},但是这样,ifelse只能管住自己之后的一行代码。并且,在没有{}else自动与距离他最近的一个if进行匹配。

int main () {
  int age = 10;
  if (age >= 18)
    printf("成年了!\n");
    //这串代码不管是否满足 age>=18 的条件都执行的
    printf("可以谈恋爱!\n");
  else
    printf("未成年!\n");
    //这串代码不管是否满足 age<18 的条件都执行的
    printf("不能谈恋爱!\n");
  //下面的大面什么都不会打印
  //因为else与第二个if匹配了
  /*int a = 0;
  int b = 1;
  if (a == 1)
    if (b == 2)
      printf("heh\n");
  else
    printf("haha");*/
  return 0;
}

 所以,为了代码结构清楚明了,我们要在每个ifelse加上{}来表明他们的作用范围。

二、switch分支语句

int main () {
  /*switch语句:
  switch(整型表达式){
    语句项;
  }
  语句项:
  case 整型常量表达式
    语句;
  */
  return 0;
}

case 整型常量表达式用来进入一个分支,但是他不会跳出分支;所以下面的代码不管从哪个分支开始,都会执行到第七个分支才会停止。

int main() {
  int day = 0;
  scanf("%d", &day);
  switch (day) {
  case 1:
    printf("星期一\n");
  case 2:
    printf("星期二\n");
  case 3:
    printf("星期三\n");
  case 4:
    printf("星期四\n");
  case 5:
    printf("星期五\n");
  case 6:
    printf("星期六\n");
  case 7:
    printf("星期天\n");
  }
  return 0;
}

我们跳出分支语句就需要用到break

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;
  }
  return 0;
}

这样,我们的代码就不会执行到底了,但是这时候又会出现另一个问题,那就是总会有些人的脑子构造和我们不一样,1-7他偏偏都不喜欢,就喜欢这7个数之外的数,之后就需要用到我们的default子句。

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语句只能有一个default子句。

目录
相关文章
|
3天前
|
Python
phython单分支if语句
phython单分支if语句
|
3天前
|
Python
phytthon多分支if-elif-else语句
phytthon多分支if-elif-else语句
|
5月前
分支和循环语句(2)补充goto语句
分支和循环语句(2)补充goto语句
34 1
|
5月前
|
C语言
分支语句和循环语句(1)
分支语句和循环语句(1)
34 0
|
6月前
|
编译器
分支语句与循环语句题
分支语句与循环语句题
43 0
|
7月前
分支语句及其应用
分支语句及其应用
27 0
|
7月前
|
数据安全/隐私保护
【分支语句与循环语句】
【分支语句与循环语句】
28 0
|
12月前
|
C语言
分支语句(if、if-else、if-else if...else、switch)
在c语言中有三种程序结构。 1 . 顺序结构 2 . 分支结构 3 . 循环结构 本文章讲的是分支结构
|
存储 算法 编译器
倾心创作,分支语句和循环语句(1)——分支语句—— if 和switch的用法详解
分支语句(条件判断语句、选择语句) (1)if语句 a if() { …… } b if……else…… c if……else if……else…… d.悬空else (2)switch语句 a.switch语句也是一种分支语句。常常用于多分支的情况。 b.break在switch中的作用 c.switch的使用
93 0
倾心创作,分支语句和循环语句(1)——分支语句—— if 和switch的用法详解