【C语言初阶】switch语句的基本语法

这篇具有很好参考价值的文章主要介绍了【C语言初阶】switch语句的基本语法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章

🎬 鸽芷咕:个人主页

 🔥 个人专栏:《C语言初阶篇》 《C语言进阶篇》
⛺️生活的理想,就是为了理想的生活!

前言

   🌈hello! 各位宝子们大家好啊,又是新的一天开始了,今天给大家带来的switch语句的全面讲解!
   ⛳️预计博主这俩天会把分支语句和循环语句给彻底更新完,然后向函数出发!
   📚本期文章收录在《C语言初阶篇》,大家有兴趣可以看看呐
  ⛺️ 欢迎铁汁们 ✔️ 点赞 👍 收藏 ⭐留言 📝!

💬 switch语句的介绍

📌前面的一篇:《if语句的详解》
我们已经学会了if语句那么大家来看看这种情况:

📚 那么我们想编写一下这段程序该怎么办:

输入1,输出星期一
输入2,输出星期二
输入3,输出星期三
输入4,输出星期四
输入5,输出星期五
输入6,输出星期六
输入7,输出星期日

如果用if的多分支来实现呢?

代码演示;

#include <stdio.h>
int main()
{
	int day = 0;
	//输入
	scanf("%d", &day);
	if (1 == day)
		printf("星期1\n");
	else if (2 == day)
		printf("星期2\n");
	else if (3 == day)
		printf("星期3\n");
	else if (4 == day)
		printf("星期4\n");
	else if (5 == day)
		printf("星期5\n");
	else if (6 == day)
		printf("星期6\n");
	else if (7 == day)
		printf("星期天\n");
	else
		printf("输入错误\n");

	return 0;
}
  • 大家发现没,用 if...else if ...else if 的形式太复杂,所以我们C语言就有了switch这个语法形式。

📜 switch语句:

switch语句也是一种分支语句。常常用于多分支的情况。

📑语法形式:

switch(整型表达式)
{
    case 整形常量表达式:
    语句;
}

💬 switch语句的语法形式

前面我们给大家简单介绍了一下:
switch语句的作用和语法形式那么该怎么使用呢?

  • ⛳️ 我们按照语法写看下对不对呢?
#include <stdio.h>
int main()
{
	int day = 0;
	//输入
	scanf("%d", &day);
	switch (day)
	{
	case 1:
		printf("星期一");
	case 2:
		printf("星期二");
	case 3:
		printf("星期三");
	case 4:
		printf("星期四");
	case 5:
		printf("星期五");
	case 6:
		printf("星期六");
	case 7:
		printf("星期天");
	}
	return 0;
}

📚 演示结果:
【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章
📌诶大家会发现,这和我们预计的根本不一样?

  • 🌱 我们预计的是,按3之后只输出星期三。
  • 🌱 实际是,程序把星期三后面的全部都给输出了。
  • 🌱 这时就会需要我们的 break语句
  • 🌱下面我们来介绍一下它的作用
💭 在switch语句中的 break

⛳️在switch语句中,我们没办法直接实现分支,搭配break使用才能实现真正的分支。

📚 而break是什么意思呢:

  • 🌲 break 英文意思是结束。
  • 🌲 而我们前面出现的问题就是, case语句 没有结束
  • 🌲 每次从我们选择的那个分支一直继续。
  • 🌲 所以我们需要每次在 case语句 后面加上 break语句 结束就好了。

📜 代码演示:

#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");
	case 7:
		printf("星期天\n");
		break;
	}
	return 0;
}

👑 代码结果:
【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章
哦豁,这下我们是不是就把问题给解决了。

  • 知识点
  • 🌱 在 switch语句 中,caes是我们分支语句的入口。
  • 🌱 break 是我们分支语句的出口,跳出分支

💡 而有时候我们的需求变了:

📚 该怎么编写呢?

  1. 输入1-5,输出的是“weekday”;
  2. 输入6-7,输出“weekend”

📜 代码演示:

#include <stdio.h>
//switch代码演示
int main()
{
    int day = 0;
    switch(day)
   {
        case 1case 2:
        case 3:
        case 4:
        case 5:
            printf("weekday\n");
            break;
        case 6:
        case 7:
            printf("weekend\n");
            break;
   }
    return 0;
}

🐣 这样我们就完美解决问题啦!

💭 default子句

⛳️前面我们详细讲解了,switch语句

  • 但是有没有想过一个问题如果我们输入9会怎么样?
#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");
	case 7:
		printf("星期天\n");
		break;
	}
	return 0;
}

【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章

📖说明:

  • 🐲 如果表达的值与所有的case标签的值都不匹配怎么办?
    • 🌱 其实也没什么,结构就是所有的语句都被跳过而已。
    • 🌱 程序并不会终止,也不会报错,因为这种情况在C中并不认为是个错误。
    • 🌱 但是,如果你并不想忽略不匹配所有标签的表达式的值时该怎么办呢?
    • 🌱 你可以在语句列表中增加一条default子句,把下面的标签
    • default:
    • 🌱 写在任何一个 case 标签可以出现的位置。

📑 代码演示:

#include <stdio.h>
int main()
{
	int day = 0;
	//输入
	scanf("%d", &day);
	switch (day)
	{
	case 1:
		printf("星期一\n");
		break;
	case 2:
		printf("星期二\n");
		break;
	default:
			printf("输入错误!\n");
	}
	return 0;
}

👑 代码结果:

【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章


⛳️ default的意思:

  • 🌱 当 switch 表达式的值并不匹配所有 case 标签的值时
  • 🌱 这个 default 子句后面的语句就会执行。
  • 🌱 所以,每个switch语句中只能出现一条default子句。
  • 🌱 但是它可以出现在语句列表的任何位置
  • 🌱 而且语句流会像执行一个case标签一样执行default子句。

📝 编程好习惯

在每个 switch 语句中都放一条default子句是个好习惯,甚至可以在后边再加一个 break 。

💬 switch语句的注意事项

⛳️ switch语句我们都介绍完了,但是这些细节可别忘记哦!

  • 🌱 switch( ) 的括号里面必须是 整形表达式
  • 🌱 caes语句 后面必须跟 整形表达式整形常量表达式
  • 下面我给大家示范一下错误案例。

💬错误案例

💭switch( ) 的括号使用 浮点数

📚 代码演示:

#include <stdio.h>
int main()
{
	float day = 0;
	//输入
	scanf("%d", &day);
	switch (day)
	{
	case 1:
		printf("星期一\n");
		break;
	case 2:
		printf("星期二\n");
		break;
	default:
			printf("输入错误!\n");
	}
	return 0;
}

📑 代码结果:
【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章
【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章

💭caes语句后面跟 变量

📚 代码演示:

#include <stdio.h>
int main()
{
	int day = 0;
	int n = 1;//后面的f表示是个浮点数一般建议加上
	//输入
	scanf("%d", &day);
	switch (day)
	{
	case n:
		printf("星期一\n");
		break;
	case 2:
		printf("星期二\n");
		break;
	default:
			printf("输入错误!\n");
	}
	return 0;
}

📑 代码结果:
【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章

【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章

💭const 修饰的常变量可以嘛?

📚 代码演示:

#include <stdio.h>
int main()
{
	int day = 0;
	const int n = 1;//后面的f表示是个浮点数一般建议加上
	//输入
	scanf("%d", &day);
	switch (day)
	{
	case n:
		printf("星期一\n");
		break;
	case 2:
		printf("星期二\n");
		break;
	default:
			printf("输入错误!\n");
	}
	return 0;
}

📑 代码结果:
【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章
🔥 注:在C++标准里面const修饰的常变量,就不在是一个变量了,而是一个常量所以在switch里面是可以跟在case后面的!
📚 代码演示:

#include <stdio.h>
int main()
{
	int day = 0;
	const int n = 1;//后面的f表示是个浮点数一般建议加上
	//输入
	scanf("%d", &day);
	switch (day)
	{
	case n:
		printf("星期一\n");
		break;
	case 2:
		printf("星期二\n");
		break;
	default:
			printf("输入错误!\n");
	}
	return 0;
}

📑 代码结果:

【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章

🔥 注:.cpp是C++程序的后缀名。

总结

✅ 归纳:
好了以上就是关于分支语句 switch 的用法,和注意事项就全部讲解完毕啦!
  switch的介绍
  switch的语法
  switch中的break
  default语句
  switch的注意事项
☁️ 把本章的内容全部掌握,铁汁们就可以熟练应用switch语句啦!
看到这里了还不给博主扣个:
⛳️ 点赞☀️收藏 ⭐️ 关注

💛 💙 💜 ❤️ 💚💓 💗 💕 💞 💘 💖
拜托拜托这个真的很重要!
你们的点赞就是博主更新最大的动力!
有问题可以评论或者私信呢秒回哦。
【C语言初阶】switch语句的基本语法,《C语言初级篇》,c语言,开发语言,c++,热门文章文章来源地址https://www.toymoban.com/news/detail-631738.html

到了这里,关于【C语言初阶】switch语句的基本语法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 进阶语法:switch语句扩展

    switch 语句是一种多分支选择结构,用于基于不同的情况执行不同的代码块。它通常用于处理多个明确的、互斥的条件,每个条件对应一个 case 子句。与 if-else 语句相比, switch 语句在处理多个明确值的情况时更加直观和易读。 1.1  switch语句的语法 基本的 switch 语句语法如下:

    2024年04月28日
    浏览(36)
  • C/C++语法Switch语句

    语法形式如下:  还有另一种语法形式: 这个形式和第一种其实没什么差别,只是case 1和case 2里面的语句块是空而已,所以这时无论你输入1,2,3,都会进入case 3的语句块执行。  1.每一个case后面都要跟一个空格然后再跟整形表达式,这是初学者很容易犯的错误,一定要注意。

    2024年02月13日
    浏览(45)
  • 【C语言】switch语句的理解

    任何具有判定能力的语法结构,都必须具备 判定+分支 功能 在 switch 语法结构中: case 完成的判定功能 break 完成的是分支功能 default 处理异常情况 举例 根据输入的数字,打印出今天是星期几 编译运行: 每次写 switch 语句时,即使程序真的不需要 default 处理,也应该保留以下

    2023年04月09日
    浏览(30)
  • C语言——分支语句(if,switch)

    前言:这篇博客,主要想从 理解分支语句,语句的执行过程和书写 以及一些 注意事项 来谈谈 分支语句 🎬 个人简介:努力学习ing 📝 CSDN主页 愚润求学 🌄 每日鸡汤: 我走的很慢,但我从不后退 目录 一,if语句 注意事项 二,switch语句 我们如何理解分支语句是什么? 分

    2024年02月06日
    浏览(45)
  • (上) C语言中的语句分类及分支语句:if语句、switch语句介绍

    目录 前言 一、语句的分类 1. 空语句 2. 表达式语句 3. 函数调用语句 4. 复合语句 5. 控制语句 二、分支语句 1. if语句 (1) if的使用 (2) else的使用 (3) 分支中包含多条语句 (4) 嵌套if (5) 悬空else问题 2. switch语句 (1) if语句和switch语句的对比 (2) switch语句中的break (3) switch语句中的defa

    2024年01月22日
    浏览(58)
  • C语言 switch case 语句优化方案其一

                   这是一个用于计时的函数,细心的朋友应该可以发现,这段代码还隐藏一段 if 语句的优化方案,那就是 提前return,干掉else。                结构体内容如下: 当case语句较少的时候还能接收,假如很多的时候就会难以维护,这里提供一种思维。   

    2024年01月21日
    浏览(39)
  • C 语言中的 switch 语句和 while 循环详解

    替代多重 if..else 语句,可以使用 switch 语句。 switch 语句用于选择多个代码块中的一个来执行 switch 表达式只会被计算一次 表达式的值与每个 case 的值进行比较 如果找到匹配,则执行相应的代码块 break 语句用于跳出 switch 块并停止执行 default 语句是可选的,如果找不到匹配的

    2024年02月04日
    浏览(33)
  • C语言 switch语句详细讲解 简单计算器及PTA例题季节判断,今天星期几-1(switch语句实现), 数据按需处理

    (1) 当被测试的变量等于 case 中的常量时,case 后跟的语句将被执行,直到遇到  break  语句为止。 (2)不是每一个 case 都需要包含  break 。如果 case 语句不包含  break ,控制流将会  继续  后续的 case,直到遇到 break 为止。 (3) 上面所有 case 都无法判断结果时,可用 default 代替

    2024年02月05日
    浏览(46)
  • 【C语言步行梯】分支语句if...else、switch详谈

    🎯每日努力一点点,技术进步看得见 🏠专栏介绍:【C语言步行梯】专栏用于介绍C语言相关内容,每篇文章将通过图片+代码片段+网络相关题目的方式编写,欢迎订阅~~ C语言由 ; (分号)隔开的就是一条语句,举个例子↓↓↓ 生活中,我们有很多需要选择的情况。例如:你想

    2024年03月16日
    浏览(54)
  • HarmonyOS/OpenHarmony应用开发-ArkTS语言基本语法说明

    图1  示例效果图   本示例中,ArkTS的基本组成如下所示。 图2  ArkTS的基本组成     装饰器: 用于装饰类、结构、方法以及变量,并赋予其特殊的含义。如上述示例中@Entry、@Component和@State都是装饰器,@Component表示自定义组件,@Entry表示该自定义组件为入口组件,@State表示组

    2024年02月07日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包