C语言教程-流程控制(分支)

概念

控制流程(也称为流程控制)是计算机运算领域的用语,意指在程序运行时,个别的指令(或是陈述、子程序)运行或求值的顺序。不论是在声明式编程语言或是函数编程语言中,都有类似的概念。

以上内容来自百度百科流程控制。简单来说,流程控制就是控制程序的运行流程,以实现在不同的条件下执行不同的代码片段。

本节内容将讲述流程控制中的分支语句。

if语句

在分支语句中,最常用的就是if了。先看一段示例代码。

#include <stdio.h>

int main()
{
	int a = 1;
	if(a > 0)
	{
		printf("a > 0");
	}
	return 0;
}

上述代码在运行后将会打印出"a > 0"的字样。在这里if后面紧跟的一对括号内填写判断的条件,当条件满足时将会运行紧跟if之后的花括号内的代码片段,否则将不会执行。

else语句

依然使用上边的代码,我们对代码做简单的修改,修改之后如下。

#include <stdio.h>
 
int main()
{
	int a = 1;
	if(a > 0)
	{
		printf("a > 0");
	}
	else
	{
		printf("a !> 0");
	}
	return 0;
}

else语句应当紧跟在if语句之后的花括号之后,同样的,它下面要执行的代码片段也应该被一对花括号包围。在这里,如果圆括号内的条件不成立,就会执行else之后的代码块。

分支语句的嵌套

if语句中还可以继续嵌套更多的if语句。例如如下代码。

#include <stdio.h>
 
int main()
{
	//判断一个数字是不是既可以被2整除又可以被3整除
	int a = 6;
	if(a % 2 == 0)
	{
		if(a % 3 == 0)
		{
			printf("yes");
		}
	}
	return 0;
}

同样的道理,我们也可以在else代码块中嵌套新的if语句

else if语句

先看一段代码

#include <stdio.h>
 
int main()
{
	//判断一个数字是否可以被2整除,如果不可以,判断是否可以被3整除
	int a = 6;
	if(a % 2 == 0)
	{
		printf("可以被2整除\n");
	}
	else if(a % 3 == 0)
	{
		printf("可以被3整除\n");
	}
	return 0;
}

switch语句

switch语句为多分支语句,请看如下示例代码。

#include <stdio.h>
 
int main()
{
	int a = 6;
	switch(a)
	{
	case 0: printf("a == 0\n"); break;
	case 1: printf("a == 1\n"); break;
	case 2: printf("a == 2\n"); break;
	case 3: printf("a == 3\n"); break;
	case 4: printf("a == 4\n"); break;
	default: printf("A is some other value\n"); break;
	}
	return 0;
}

switch语句中,圆括号内只能填写整型变量或枚举类型(枚举类型将会再以后的内容中讲解)在之后的case关键字之后,填写的值将会与圆括号中的值比较,如果相同则程序跳转到此处开始执行,如果均未能匹配则执行default之后的代码。上述代码中的break用来跳出当前语句块,关于break的更多内容会在以后讲解。
可以尝试删除break然后修改变量a的值看看有什么效果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值