C语言中switch语句_switch在c语言中

C语言中switch语句_switch在c语言中本篇文章帮大家学习c语言switch语句,包含了C语言switch语句使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。C语言中的switch语句用于从多个条件执行代码。就像ifelse-if语句一样。C语言中switch语句的语法如下:switch(expression){casevalue1://codetobeexecuted;break;//opt…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

本篇文章帮大家学习c语言switch语句,包含了C语言switch语句使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。

C语言中的switch语句用于从多个条件执行代码。 就像if else-if语句一样。

C语言中switch语句的语法如下:

switch(expression){

case value1:

//code to be executed;

break; //optional

case value2:

//code to be executed;

break; //optional

……

default:

code to be executed if all cases are not matched;

}

C语言中switch语句的规则如下 –

switch表达式必须是整数或字符类型。

case值必须是整数或字符常量。

case值只能在switch语句中使用。

switch case中的break语句不是必须的。这是一个可选项。 如果在switch case中没有使用break语句,则匹配case值后将执行所有后的语句。它被称为通过C语言switch语句的状态。

我们试着通过例子来理解它。假设有以下变量及赋值。

int x,y,z;

char a,b;

float f;

有效的Switch

无效的Switch

有效的Case

无效的Case

switch(x)

switch(f)

case 3;

case 2.5;

switch(x>y)

switch(x+2.5)

case ‘a’;

case x;

switch(a+b-2)

case 1+2;

case x+2;

switch(func(x,y))

case ‘x’>’y’;

case 1,2,3;

C语言中的switch语句的流程图 –

我们来看一个简单的C语言switch语句示例。创建一个源文件:switch-statment.c,其代码如下 –

#include

#include

void main() {

int number = 0;

printf(“Enter a number:”);

scanf(“%d”, &number);

switch (number) {

case 10:

printf(“number is equals to 10\n”);

break;

case 50:

printf(“number is equal to 50\n”);

break;

case 100:

printf(“number is equal to 100\n”);

break;

default:

printf(“number is not equal to 10, 50 or 100\n”);

}

}

执行上面示例代码,得到以下结果 –

Enter a number:88

number is not equal to 10, 50 or 100

执行第二次,结果如下 –

Enter a number:50

number is equal to 50

请按任意键继续. . .

switch语句直通到尾

在C语言中,switch语句是通过的,这意味着如果在switch case中不使用break语句,则匹配某个case之后的所有的case都将被执行。

我们来试试通过下面的例子来了解switch语句的状态。创建一个源文件:switch-fall-through.c,其代码如下所示 –

#include

#include

void main() {

int number = 0;

printf(“enter a number:”);

scanf(“%d”, &number);

switch (number) {

case 10:

printf(“number is equals to 10\n”);

case 50:

printf(“number is equal to 50\n”);

case 100:

printf(“number is equal to 100\n”);

default:

printf(“number is not equal to 10, 50 or 100\n”);

}

}

执行上面示例代码,得到以下结果 –

enter a number:10

number is equals to 10

number is equal to 50

number is equal to 100

number is not equal to 10, 50 or 100

请按任意键继续. . .

从上面的输出结果中,可以清楚地看到,当匹配 number = 10 之后,由于没有break语句,其它后面的语句也打印执行了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/179046.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 一定要看

    一定要看前言(一定要看)首先说一下啊,本人是个菜鸟,但自认是一个懂的上进的菜鸟,现在对游戏开发或多或少懂了一丁点吧。现在把我的资料全部上传,也许大家会觉得,资料有的网上都有吧,也许觉得资料没什么用吧,这个确实。但一个资料只要有一点点对你有用我就满意了,就够了。为了方便大家下载,小文件我都是打包了,没有任何的密码之类的。学习的资料不管是好的还是不好的我都上传了,这些是我从0开始学的东

  • 使用adb命令安装安卓apk包[通俗易懂]

    使用adb命令安装安卓apk包[通俗易懂]虽然网上也有许多adb安装安卓包的教程,但经过自己亲自试了一下后,觉得自己写下来的才是自己的收获。一、下载安装adb工具下载地址有很多,这里是我下载的地址:https://pan.baidu.com/s/1mgGkNZM,下载文件比较齐全。下载后是个压缩包,解压后一共有5个文件,如下图:这里我都是解压到当前文件夹了因为安装包里就有个cmd,所以就省去了在运行中打开cmd,再在cmd中打开adb的步骤了,在要用adb工具时直接点击cmd.exe就可以了。如下有位网友总结的安.

  • dns欺骗编辑html,charles DNS欺骗

    dns欺骗编辑html,charles DNS欺骗DNS欺骗/DNSSpoofing功能:通过将您自己的主机名指定给远程地址映射来欺骗DNS查找一般的开发流程中,在上线之前都需要在测试环境中先行进行验证,而此时手机客户端请求的域名是不太容易改变的,可以通过设置dns方式把域名转发到测试机上,具体设置Tools->DNSSpoofingSettings比如要把所有包含xxxxxx.com的域名转到10.0.0.71的服务器上,其实用修改…

  • epoll()无论涉及wait队列分析

    epoll()无论涉及wait队列分析

  • 人工神经网络多层感知器_基于BP网络的多层感知器用来干嘛

    人工神经网络多层感知器_基于BP网络的多层感知器用来干嘛虽然异或问题成为感知器和早期神经网络的阿喀琉斯之踵,但它并非无解的问题。恰恰相反,解决它的思路相当简单,就是将单层感知器变成多层感知器。1,多层感知器(multilayerperceptron)包含一个或多个在输入节点和输出节点之间的隐藏层(hiddenlayer),除了输入节点外,每个节点都是使用非线性激活函数的神经元;2,多层感知器是一类前馈人工神经网络;3,多层感知器的训练包括以下步骤:首先确定给定输入和当前权重下的输出,再将输出和真实值相减得到误差函数,最后根据误差函数更新权重。在训练过程中

    2022年10月21日
  • STM32CubeMX | STM32 HAL库方式的微秒延时函数

    STM32CubeMX | STM32 HAL库方式的微秒延时函数STM32CUBEMX系列教程之HAL库方式的微秒延时函数标准库一般是使用系统嘀嗒定时器来进行微妙级别的延时,而HAL库官方使用SysTick的地方非常多,改代码容易引起错乱。网上的代码使用定时器进行微秒级别延时(不知道该方式的请自行搜索),总是卡在__HAL_TIM_GET_COUNTER,所以自己实现一个微秒级别延时函数尤为重要。#defineCPU_FREQUENCY_MHZ…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号