关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

C语言分支语句详解

发布时间:2023-06-27 20:00:10

前言


今天一起来学习C语言第七弹

在C语言的学习中,语句尤为重要。以下是对C语言分支语句的部分详解

一、if语句的详解


1.if语句中单分支结构的语法结构及代码详解

单分支结构:表达式结果为真则执行语句,表达式结果不成立则不执行。

2.if语句中多分支结构的语法结构及代码详解

多分支结构表达式1成立,则语句1执行,表达式2成立,则语句2执行。除此之外多分支结构可以加多个else if。

3.if语句注意点

执行多条语句,应该使用代码块。

正确如下:

4.练习

例题1:

答案:什么都没有输出。

注意:当出现两个if时,else 是和距离它最近的if进行匹配。

但当出现以下情况时,else就不是和距离它最近的if进行匹配

其次if(a==1)不能写成if(a=5);

可以写成if(1 ==a),这样当写成if(1=a)时就会报错。

例题2:输出1~100之间的奇数

for循环写法

#includeint main() {  int a = 0;  for (a = 0; a <= 100; a++)  {  if (a % 2 == 1)  printf("%d ", a);  }  return 0; }

   

while循环写法

#includeint main() {  int a = 0;  while (a <= 100)  {  if (a % 2 == 1)  printf("%d ", a);  a++;  }  return 0; }

   

不用if语句

#includeint main() {  int a = 1;  while (a <= 100)  {  printf("%d ", a);  a+=2;  }  return 0; }

   

二、swith语句的详解


1.switch语句的结构


代码如下(示例):

switch(整形表达式) {  语句项(是一些case语句)  如:  case 整形常量表达式:  语句; }

   

2.switch语句具体代码示例


代码如下(示例):

int main() {  int day = 0;  scanf_s("%d", &day);  switch (day)  {  case 1:  printf("星期1\n");  case 2:  printf("星期2\n");  case 3:  printf("星期2\n");  case 4:  printf("星期4\n");  case 5:  printf("星期5\n");  case 6:  printf("星期6\n");  case 7:  printf("星期7\n");  default:  printf("输入错误\n");  break;  }  return 0; }

   

当输入一个值时,假设输入4,则会输出星期4 星期5 星期6 星期7。因为输入4,4之前的不执行而后面的并没有停止所以会从星期4到星期7直到程序结束。如果只想输出一个星期4,则需要加上break,就会停止。

#includeint main() {  int day = 0;  scanf_s("%d", &day);  switch (day)  {  case 1:  printf("星期1\n");  break;  case 2:  printf("星期2\n");  break;  case 3:  printf("星期2\n");  break;  case 4:  printf("星期4\n");//当然也可以只在这里加上break  break;  case 5:  printf("星期5\n");  break;  case 6:  printf("星期6\n");  break;  case 7:  printf("星期7\n");  break;  default:  printf("输入错误\n");  break;  }  return 0;

   

如果default语句在所有case最后,此时可以不加break 如果default语句之后还有case语句,如果不加break,则default语句执行过之后会继续下面的case语句,此时必须要在default之后加break语句,不过这种default用法是不推荐的,default顾名思义是缺省情况,只有任何条件都不匹配的情况下才会执行,所以应该将default语句放在所有case结束之后。

#includeint main() {  int day = 0;  scanf_s("%d", &day);  switch (day)  {  case 1:  case 2:  case 3:  case 4:  case 5:  printf("工作日\n");  break;  case 6:  case 7:  printf("休息日\n");  break;  }  return 0; }

   

当输出一样时可以如上图写法。

1.switch语句中的注意事项


switch(是整形表达式)例如short、char、int、long整数类型和枚举类型

case 必须是整形常量表达式:

float day=0;//这种形式就是错误的 switch(day) { case 1.0//这种形式就是错误的不是整形 case n//这种形式也是错误的不是常量 }

   

2.练习


答案:m=5,n=3

解析:因为开始n=1进入switch语句,先执行case 1是m++所以m变成3,再执行case 2是n++所以n变成2,然后执行case 3再次进入switch语句,n=2所以执行case 2语句,m++,n++所以m n分别变成4和3,经过break,跳出case 3中的switch语句,执行case 4所以m++,m变成5然后经过break跳出switch语句

总结


以上就是今天要学习的内容,本文仅仅简单介绍了C语言中分支语句。


/template/Home/leiyu/PC/Static