C语言分支语句与循环语句

本文详细介绍了C语言中的分支结构(if和switch)以及三种循环语句(while、for和do...while),包括它们的语法、示例和break关键字的重要性。
摘要由CSDN通过智能技术生成

一、分支语句

(1)if语句

  (2)  switch语句

二、循环语句

(1)while循环

(2)for循环

(3)do...while循环

分支语句

1、if语句

语法形式如下:

类型一

1  if (表达式)

2     语句;

例子:输入一个数,判断是否为偶数

  #include <stdio.h>
  int main()
  {
     int num = 0;
     scanf("%d", &num);
     if(num % 2 == 0)
          printf("%d 是偶数\n", num);
     return 0;
  }

类型二

1  if (表达式)

2      语句1;

3  else

4      语句2;

例子:输入一个年龄,判断是否成年

  #include <stdio.h>
  int main()
  {
     int age = 0;
     scanf("%d", &age);
     if(age > 18)
          printf("成年");
     else
          printf("未成年");
     return 0;
  }

在if语句中,表达式成立(为真),则语句执行,表达式不成立(为假),则语句不执行

2、switch语句

语法形式如下:

1  switch (expression)
2  {
3  case value1: statement
4  case value2: statement
5  default: statement
6  }
特别注意:(1)switch后的expression必须是整型表达式。

                  (2)case后的值必须是整型常量表达式

                  (3)case和后面的数字之间必须有空格

例子:输入一个整数值,计算除3之后的余数

#include <stdio.h>
int main()
{
 int n = 0;
 scanf("%d", &n);
 switch(n%3)
 {
 case 0:
    printf("整除,余数为0\n"); 
    break;
 case 1:
    printf("余数是1\n"); 
    break;
 case 2:
    printf("余数是2\n"); 
    break;
 }
 return 0;
}

代码中break用来跳出switch语句

如果没有break会怎么样?

例:

#include <stdio.h>
int main()
{
 int n = 0;
 scanf("%d", &n);
 switch(n%3)
 {
  case 0:
    printf("整除,余数为0\n"); 
  case 1:
    printf("余数是1\n"); 
 case 2:
    printf("余数是2\n"); 
 }
 return 0;
}

结果是:

我们发现,7除以3本来余数是1,但是我们发现程序运⾏的结果多了⼀⾏“余数是2”的打印。
这是为什么呢?
原因是 switch 语句也是分⽀效果的,只有在 switch 语句中使⽤ break 才能在跳出 switch 语 句,如果某⼀个 case 语句的后边没有 break 语句,代码会继续往下执⾏,有可能执⾏其他 case 语句中的代码,直到遇到 break 语句或者 switch 语句结束。就⽐如上⾯的代码就执⾏了 case 2 中的语句。
所以在 switch 语句中 break 语句是⾮常重要的,能实现真正的分⽀效果。
当然, break 也不是每个 case 语句都得有,这就得根据实际情况来看了。
循环语句
1、while循环
语法形式如下:
1  while (表达式)
2        语句;
判断表达式,若表达式的值为0,循环直接结束;若表达式的值不为0,则执行表达式中的语句,语句执行完后在继续判断,是否进行下一次。以此来实现循环。
例子:在屏幕上打印1~10的值
#include <stdio.h>
int main()
{
  int i = 1;
  while(i<=10)
  {
    printf("%d ", i);
    i = i+1;
  }
  return 0;
}

2、for循环

语法形式如下:

1  for(表达式1;表达式2;表达式3)

2         语句;

表达式1:⽤于循环变量的初始化

表达式2:⽤于循环结束条件的判断

表达式3:⽤于循环变量的调整

例子:在屏幕上打印1~10的值

 #include <stdio.h>

 int main()
 {
 int i = 0;
 for(i=1; i<=10; i++)
 {
   printf("%d ", i);
 } 
 return 0;
 }

3、do...while循环

语法形式如下:

1  do

2          语句;

3  while(表达式)

while for 这两种循环都是先判断,条件如果满⾜就进⼊循环,执⾏循环语句,如果不满⾜就跳
出循环;
do while 循环则是先直接进⼊循环体,执⾏循环语句,然后再执⾏ while 后的判断表达式,表
达式为真,就会进⾏下⼀次,表达式为假,则不再继续循环。所以do...while至少执行一次。
例子:在屏幕上打印1~10的值
#include <stdio.h>
int main()
{
 int i = 1;
 do
 {
   printf("%d ", i);
   i = i + 1;
 }while(i<=10);
 return 0;
}

  • 23
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值