C语言分支和循环语句(1)

C语言是【结构化】的程序设计语言


前言

一、什么是语句

C语句可分为以下五类:

  1. 表达式语句
  2. 函数调用语句
  3. 控制语句
  4. 复合语句
  5. 空语句

控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句。
可分成以下三类:

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

二.分支语句(选择结构)

2.1 if语句

#include(stdio.h)
int main()
{
	if(表达式)
		{
			语句;
		}
	else if(表达式)
		{
			语句;
		}
	else
		{
			语句;
		}
}
**if 语句不一定要带else **

c语言中:非0为真 0为假

2.2 switch语句

通常用于多分枝的情况。

switch(整形表达式)
{
	//语句项 :
	case 整形常量表达式:
	语句;
	
}
#include <stdio.h>
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}
#include <stdio.h>
// 输出结果是 m = 5,n = 3
int main()
{
    int n = 1;
    int m = 2;
    switch (n)
    {
    case 1:m++;
    case 2:n++;
    case 3:
        switch (n)
        {//switch允许嵌套使用
        case 1: n++;
        case 2: m++; n++;
            break;
        }
    case 4:
        m++;
        break;
    default:
        break;
    }
    printf("m = %d, n = %d\n", m, n);
    return 0;
}

二. 循环语句

while
for
do while

3.1 while

while语句的执行流程
在这里插入图片描述

3.1.1 while语句中的break和continue

break 是用于永久的终止循环
continue 跳过本次循环后面的代码,直接去判断代码,进行下一次循环的判断

>//break 是用于永久的终止循环
 >//continue 跳过本次循环后面的代码,直接去判断代码,进行下一次循环的判断
#include <stdio.h>
int main()
{
	int i = 1;
	while(i <= 10)
	{
		i++;			//跳过 5 打印 1到11
		if (5 == i)
			//break;	//打印到 4 跳出循环
			continue;	//打印到 4 停止 死循环
		printf("%d ",i);
		//i++;			//如果把 i++ 放外面就跳过 5 打印
	}
	return 0;
}

3.1.2 while的getcahr和putcher

!!!没听多明白,能力不行
getcher 从键盘上获取一个字符           返回值是int
putcher 输出一个字符

//这个代码是从键盘上获取一个字符然后打印。
int main()
{
	int ch = getcher();
	EOF; 		//end of file
	printf("%c\n",ch);	//第1次
	putcher(ch);		//第2次
}
int main()
{
	int ch = 0;
	while((ch = getchar())
	{
		putchar(ch);
	}
}

3.2 for() 循环

for() 循环格式

for(表达式1;表达式2;表达式3)
	{
		循环语句;
	}
//表达式1 初始化
//表达式2 为条件判断
//表达式3 是调整自增自减

for() 语句的执行流程
在这里插入图片描述
不可在for循环内更改循环变量

3.2.1 for() 循环建议前闭后开写法

for(i = 0; i<10; i++)
{		//可以直接看出来循环10次
		循环语句;
}

3.3 do while()

do
	循环语句;
while(表达式)#include <stdio.h>
int main()
{
	int i = 10;
	do
	{
		printf("%d\n", i);
	}while(i<10);
	return 0;
}

执行流程

至少要执行一次

3.3.1do while的coutinue和break

include <stdio.h>
int main()
{
	int i = 10;
	do
	{
   	 	if(5 == i)
        break;
		printf("%d\n", i);
	}while(i<10); 
	return 0;
}



#include <stdio.h>
int main()
{
	int i = 10;
 
	do
	{
     	 if(5 == i)
         continue;
	printf("%d\n", i);
	}while(i<10);
   
	 return 0;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值