C语言基础知识之分支结构

系列文章目录


前言

文章作者刚入门,内容理解不成熟,有错误之处,欢迎斧正


一、什么是分支结构

具有判断能力并且能够根据判断结果执行不同路径的结构

分支结构语句主要有两种:

1.if else

完整结构:>

if(判断部分)
{
语句块1;
}
else
{
语句块2;
}
当判断结果:>
真,执行语句块1;
假,执行语句块2;

 c语言中数字0代表假,其余数字代表真,但是系统默认真的值为1

当只有语句块中只有一条语句时,外面的花括号可以省略,但是为了良好的代码书写习惯,无论语句的多少,都应该加上花括号  

(1)单分支结构 

仅有判断部分和对应语句构成,适用于结果判断为真时,需要执行相应的语句

例如,将小写字母改成大写字母的操作,由于就是大写字母时可以不做修改,那么这种情况就适用于单分支与结构

#include <stdio.h>
int main()
{
	char ch = '0';
	scanf("%c", &ch);
	if (ch >= 'a' && ch <= 'b')
	{
		ch -= 32;
	}
	printf("%c", ch);
	return 0;
}
输入’a‘时,结果是’A‘
输入’A‘时,结果是’A‘

(2)多分支结构 

由多个if else语句构成,适用于当一个完整的if else语句无法完成要求,同时多个单分支语句又无法得出正确答案

例如,要将字符字母a改成D,b改成D,c改成D,三者之间没有必然的联系,就可以采用if else多分支结构

#include <stdio.h>
int main()
{
	char ch = '0';
	scanf("%c", &ch);
	if (ch == 'a')
	{
		ch = 'D';
	}
	else if (ch == 'b')
	{
		ch == 'D';
	}
	else if (ch == 'c')
	{
		ch == 'D';
	}
	else
	{
		ch = ch;
	}
	printf("%c", ch);
	return 0;
}

 如上程序,其中的最后一个else语句,并没有什么实际性的作用,所以可以把将它省略,该程序也能正常运行

(3)嵌套分支结构

在分支结构里面,嵌套分支结构,适用于判断后,需要再次判断的情况

例如,判断是否是大写字母,然后再执行上面题目例子

#include <stdio.h>
int main()
{
	char ch = '0';
	scanf("%c", &ch);
	if (ch >= 'a' && ch <= 'z')
	{
		if (ch == 'a')
		{
			ch = 'D';
		}
		else if (ch == 'b')
		{
			ch == 'D';
		}
		else if (ch == 'c')
		{
			ch == 'D';
		}
		else
		{
			ch = ch;
		}
	}
	else
	{
		ch = ch;
	}
	printf("%c", ch);
	return 0;
}

 这样就既实现了字母大小写的判断,又实现了对应要求字母的更改。

2.switch

完整结构:>

switch(判断部分)
{
case x1:语句块1;break;
case x2:语句块2;break;
case x3:语句块3;break;
case ..:语句块..;break;
default :语句块n:break;
}

Switch语句由前面的判断部分和后面的不同情况case,及其对应语句块组成,并且判断部分只能是整型的结果情况case 1,2,3都只能是整型的常量(字符也是整形,它可以用对应的ASCII码表示)

注意:>其中的case,作为语句的入口(因此同一个语句块情况可以叠加,例如:case1:case2:语句块;break;当为条件1或条件2时,语句块都会被执行),break作为出口,所以如果语句块后面没有break时,程序就会继续往下执行到下一个case,直到找到出口或者switch分支结束

#include <stdio.h>
int main()
{
	int a = 0;
	switch (a)
	{
	case 0:a = 1; break;
	case 1:a = 11; break;
	default:a = 111; break;
	}
	printf("a=%d\n", a);
	int b = 0;
	switch (b)
	{
	case 0:b = 1; 
	case 1:b = 11; break;
	default:b = 111; break;
	}
	printf("b=%d\n", b);
	int c = 0;
	switch (c)
	{
	case 0:c = 1;
	case 1:c = 11;
	default:c = 111; 
	}
	printf("c=%d\n", c);
	return 0;
}
结果:> a=1
       b=11
       c=111

总结

以上就是分支结构,在程序设计中应用比较频繁,其中最多的是if else分支结构

  • 10
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
C语言基础知识入门教案是为初学者设计的一份教学计划,旨在帮助学生快速了解和掌握C语言基础知识。以下是一个简单的教案示例: 第一节:入门介绍 1. 引入C语言的概念和应用领域; 2. 介绍C语言的特点和优势; 3. 讲解C语言开发环境和编译过程; 4. 创建并运行第一个C程序。 第二节:变量和数据类型 1. 介绍变量的概念和作用; 2. 引入C语言的基本数据类型,如整型、浮点型、字符型等; 3. 讲解变量的声明和初始化; 4. 演示如何在程序使用变量。 第三节:运算符和表达式 1. 介绍算术运算符、关系运算符和逻辑运算符; 2. 讲解表达式的概念和构成; 3. 演示如何在程序使用运算符和表达式; 4. 引入赋值运算符和复合赋值运算符。 第四节:控制语句 1. 介绍顺序结构、分支结构和循环结构; 2. 讲解条件语句(if-else语句和switch语句)的使用; 3. 演示循环语句(while循环、do-while循环和for循环)的应用; 4. 示例程序展示控制语句的实际运用。 第五节:函数和数组 1. 介绍函数的概念和组成部分; 2. 讲解函数的定义、声明和调用; 3. 演示如何使用函数解决实际问题; 4. 引入数组的概念和使用方法。 第六节:指针和字符串 1. 介绍指针的概念和作用; 2. 讲解指针的声明、初始化和使用; 3. 演示指针与数组的关系和指针与函数的应用; 4. 引入字符串的概念和常见操作。 第七节:文件操作 1. 介绍文件操作的基本概念; 2. 讲解文件的打开、关闭、读取和写入; 3. 演示如何在程序进行简单的文件操作; 4. 提供实例程序,展示文件操作的实际应用。 通过以上教学计划,学生可以逐步了解和掌握C语言基础知识,建立起对C语言编程的初步认识,并能够编写简单的C程序解决实际问题。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值