C#中的switch语句详解

C#上位机--选择语句(switch) switch语句作为 C# 上位机开发中流程控制的重要工具,以其简洁高效的语法结构和强大的功能特性,为开发者提供了一种优雅的多条件判断解决方案。从基础的语法应用到与枚举类型的结合,再到高级的模式匹配和嵌套使用,switch语句在各种场景下都能发挥出巨大的作用。通过本文的详细介绍和实际程序演示,希望你已经对 C# 上位机中的switch语句有了全面而深入的理解。在今后的 C# 上位机开发项目中,能够灵活运用switch语句,提升程序的性能和可读性。。 阅读详情
AI摘要

本文详细介绍了C#中的switch语句,包括其语法、用法、示例,以及如何根据表达式值执行不同代码块,支持单值和多值匹配,以及默认代码块的使用。

在C#编程语言中,switch语句是一种用于根据不同的条件执行不同代码块的控制流结构。它允许程序根据一个表达式的值,选择执行与该值相关联的特定代码块。本文将详细介绍switch语句的语法、用法和示例代码。

switch语句的基本语法如下:

switch (expression)
{
    case value1:
        // 代码块1
        break;
    case value2:
        // 代码块2
        break;
    // 可以有更多的case语句
    default:
        // 默认代码块
        break;
}

首先,我们需要一个表达式,它的值将被用于与case语句中的值进行比较。根据表达式的值,程序将跳转到与匹配的case值相对应的代码块中执行相应的代码。如果没有找到匹配的case值,将执行默认代码块(default)。

在每个case语句中,我们可以编写一段代码块,以执行与之相关的操作。代码块可以包含一个或多个语句。请注意,每个case语句结束时需要使用break关键字来终止当前case的执行,并跳出switch语句。如果没有使用break关键字,程序将继续执行下一个case语句,这被称为“fall-through”。通常,我们希望在每个case后面使用break,以避免不必要的执行。

如果没有任何一个case与表达式的值匹配,将执行默认代码块。默认代码块是可选的,可以在switch语句中省略。

下面是一个简单的示例,演示了如何使用switch语句来根据不同的水果名称输出相应的颜色:

string fruit = "apple";

switch (fruit)
{
    case "apple":
        Console.WriteLine("Apples are red.");
        break;
    case "banana":
        Console.WriteLine("Bananas are yellow.");
        break;
    case "orange":
        Console.WriteLine("Oranges are orange.");
        break;
    default:
        Console.WriteLine("Unknown fruit.");
        break;
}

在上面的示例中,我们使用字符串变量fruit作为switch语句的表达式。根据fruit的值,程序将选择执行相应的代码块。在这种情况下,我们的表达式值是"apple",因此将执行与case "apple"匹配的代码块,输出"Apples are red."。

如果我们将fruit的值更改为"banana",将执行与case "banana"匹配的代码块,输出"Bananas are yellow.“。如果fruit的值是"orange”,将执行与case "orange"匹配的代码块,输出"Oranges are orange.“。如果fruit的值不匹配任何一个case,将执行默认代码块,输出"Unknown fruit.”。

需要注意的是,switch语句的表达式可以是整数、字符、字符串、枚举或其他可比较的类型。

除了单个值的匹配,C#还支持多个值的匹配。多个case值可以共享同一个代码块。例如:

int day = 5;

switch (day)
{
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
        Console.WriteLine("Weekday");
        break;
    case 6:
    case 7:
        Console.WriteLine("Weekend");
        break;
    default:
        Console.WriteLine("Invalid day");
        break;
}

在上面的示例中,我们使用一个整数变量day作为switch语句的表达式。如果day的值为1、2、3、4或5,将执行共享的代码块,输出"Weekday"。如果day的值为6或7,将执行另一个共享的代码块,输出"Weekend"。C#中的switch语句详解

在C#编程语言中,switch语句是一种用于根据不同的条件执行不同代码块的控制流结构。它允许程序根据一个表达式的值,选择执行与该值相关联的特定代码块。本文将详细介绍switch语句的语法、用法和示例代码。

switch语句的基本语法如下:

switch (expression)
{
    case value1:
        // 代码块1
        break;
    case value2:
        // 代码块2
        break;
    // 可以有更多的case语句
    default:
        // 默认代码块
        break;
}

首先,我们需要一个表达式,它的值将被用于与case语句中的值进行比较。根据表达式的值,程序将跳转到与匹配的case值相对应的代码块中执行相应的代码。如果没有找到匹配的case值,将执行默认代码块(default)。

在每个case语句中,我们可以编写一段代码块,以执行与之相关的操作。代码块可以包含一个或多个语句。请注意,每个case语句结束时需要使用break关键字来终止当前case的执行,并跳出switch语句。如果没有使用break关键字,程序将继续执行下一个case语句,这被称为“fall-through”。通常,我们希望在每个case后面使用break,以避免不必要的执行。

如果没有任何一个case与表达式的值匹配,将执行默认代码块。默认代码块是可选的,可以在switch语句中省略。

下面是一个简单的示例,演示了如何使用switch语句来根据不同的水果名称输出相应的颜色:

string fruit = "apple";

switch (fruit)
{
    case "apple":
        Console.WriteLine("Apples are red.");
        break;
    case "banana":
        Console.WriteLine("Bananas are yellow.");
        break;
    case "orange":
        Console.WriteLine("Oranges are orange.");
        break;
    default:
        Console.WriteLine("Unknown fruit.");
        break;
}

在上面的示例中,我们使用字符串变量fruit作为switch语句的表达式。根据fruit的值,程序将选择执行相应的代码块。在这种情况下,我们的表达式值是"apple",因此将执行与case "apple"匹配的代码块,输出"Apples are red."。

如果我们将fruit的值更改为"banana",将执行与case "banana"匹配的代码块,输出"Bananas are yellow.“。如果fruit的值是"orange”,将执行与case "orange"匹配的代码块,输出"Oranges are orange.“。如果fruit的值不匹配任何一个case,将执行默认代码块,输出"Unknown fruit.”。

需要注意的是,switch语句的表达式可以是整数、字符、字符串、枚举或其他可比较的类型。

除了单个值的匹配,C#还支持多个值的匹配。多个case值可以共享同一个代码块。例如:

int day = 5;

switch (day)
{
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
        Console.WriteLine("Weekday");
        break;
    case 6:
    case 7:
        Console.WriteLine("Weekend");
        break;
    default:
        Console.WriteLine("Invalid day");
        break;
}

在上面的示例中,我们使用一个整数变量day作为switch语句的表达式。如果day的值为1、2、3、4或5,将执行共享的代码块,输出"Weekday"。如果day的值为6或7,将执行另一个共享的代码块,输出"Weekend"。

C# 枚举类型在switch case语句中的使用 代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp2 { //枚举类型 enum Alpha { AAA, BBB... 阅读详情

相关推荐

分支语句:C#中的Switch语句详解及使用示例

首先,我们需要定义一个判断条件的表达式(expression),它可以是任何类型的数据,例如整数、字符或字符串。然后,使用一系列的case语句来匹配expression的值,当找到匹配的值时,执行对应的代码块。总结:Switch语句是一种非常灵活且易于理解的分支语句,它可以根据不同的条件执行不同的代码块。在上面的示例代码中,我们通过Console.ReadLine()方法获取用户输入的数字,并将其转换为整数类型。你可以根据具体的需求编写不同的case代码块,以实现不同的业务逻辑。

m0_47037246的博客 4329

C#中的switch语句

然后,将这个值与每个case标签后的常量值进行比较。如果找到匹配的值,就会执行改case标签下的代码块。这是因为浮点数在计算机中的存储存在精度问题,可能导致比较结果出现意外。它根据一个表达式的值来决定执行多个代码块中的一个。例如,一个变量a,当a的值为5时,执行与5相关的代码块;当a的值为6时,执行与6相关的代码块,以此类推。语句链,在某些情况下,switch语句可以使代码更清晰,更易读,特别是当有多个固定的值需要进行比较时。表达式可以是多种类型,包括整数类型(如int、long)、字符类型(

2408_89166609的博客 4006

C#中的switch case语句

在上面的代码中,expression是要进行判断的表达式,value1、value2、value3等是与表达式进行比较的值。当expression的值与某个case后面的值相等时,就会执行相应的代码块。通过使用switch case语句,我们可以根据不同的条件执行不同的代码逻辑,使程序更加灵活和易于维护。接下来,我们使用switch case语句来根据用户的选择执行相应的代码块。在C#编程语言中,switch case语句是一种非常强大且灵活的控制结构,它允许根据给定的表达式值来执行不同的代码块。

WELL_CODER的博客 3060

C#系列之switch语句

C#系列switch语句内容,这篇笔记将为您简单阐述该内容。

2303_76354097的博客 6157

Anolis龙蜥内核升级实战:从查询到配置的全流程指南

本文提供了一份详尽的Anolis龙蜥操作系统内核升级实战指南。文章从升级的必要性出发,逐步讲解了升级前的系统检查与备份、从官方源获取正确内核包、分步安装与验证、配置默认启动项以及升级后的功能验证与安全回滚方案。旨在帮助运维人员安全、平稳地完成内核升级,以获取性能提升、新硬件支持及重要的安全漏洞修复。

qq_27496129的博客 572

从零开始学嵌入式之STM32——1.什么是STM32

它是ST公司推出的一系列单片机的统称。ST----指的是ST公司----意法半导体。意法半导体,成立于1987年,是由意大利的SGS微电子公司和法国的Thomson半导体公司合并而成。ARM目前主要是ARM架构处理器及外围组件的电路设计方案,知识产权授权的形式收取费用,其他公司根据ARM的方案设计出CPU产品。,它以应用为核心,软硬件可裁剪,旨在实现对设备的控制、监测或辅助功能,区别于通用计算机(如 PC、服务器)的 “一机多用” 属性。在嵌入式领域,目前主流的是cortex-M3内核推出的芯片。

qshdyy的博客 1854

C# switch语句的使用

1 今天我们来学习switch 语句的使用,switch 语句和if else 类似 switch 语句主要的作用是用于来判断在规定条件下 根据你的选择来执行switch 语句下面case :的程序 下面我们来简单了解它的使用 using System;using System.Collections.Generic;using System.Linq;using System.T...

weixin_30423977的博客 3059

RTL8306MB交换芯片驱动开发避坑指南:从硬件接线到SDK移植全流程解析

本文详细解析了RTL8306MB交换芯片驱动开发的全流程,重点从硬件接线、SDK移植到实战调试。针对RMII模式下的常见问题,特别是TXEN与RXDV信号交叉连接等关键“坑点”,提供了清晰的排查指南和解决方案,旨在帮助嵌入式工程师高效完成网络设备开发。

278

C#对switch语句的优化

1 一直以为C#中的switch语句在处理字符串时是用if语句来构造的,因为.net的IL中的switch也逃不脱C的宿命--只能2 处理数字,而实际上C#编译器对switch语句对字符串的处理却让人汗啊.3 首先编译一下下面的代码:4 using System;5 class EntryPoint6 {7 private s

孤帆的专栏 1万+

告别JTAG!用Artix-7和SPI Flash实现FPGA远程升级的保姆级教程

本文详细介绍了如何利用Artix-7 FPGA和SPI Flash实现FPGA远程升级(OTA)的完整方案。通过硬件连接、Vivado工程配置和STM32模拟更新等步骤,帮助开发者告别传统的JTAG烧录方式,实现高效、安全的远程固件更新,特别适用于嵌入式系统开发中的现场维护场景。

weixin_33964987的博客 364

工业缺陷检测深度学习方法综述

异常:点异常、 上下文异常和集群异常。点异常:又称为离群值 (outliers)[9], 描述数值上偏离正 常样本的独立数据。与异常相近的概念还包括新颖点(novelty)和分布外数据。上下文异常:同样描述数据点,其数值属于正常范围,但不符合局部上下文规律。集群异常:描述一系列相关数据的集合,集合中的每一个实例的数值在单独考察时都处于正常值域,但集 合整体的相关性特征不服从正常模式。一般的图像异常检测往往仅需区分正常与异常样本,而工业缺陷检测更关注于检测 图像中的异常像素.

2301_80355452的博客 1843

C# switch语句

一、C# switch语句 if语句每次判断只能实现两种选择,而switch语句每次判断可以实现多种选择。 基本语法格式如下: switch(controlling-expression){ case constant-expression: {语句块} 跳转语句(如break、return、goto) case constant-expre...

adiking520110的博客 2393

保姆级教程!Python爬虫爬取知乎回答,保存为Markdown文件

本教程实现了知乎公开回答的完整爬取与Markdown保存,核心流程为「请求页面→解析作者/时间/正文/图片→下载图片→保存MD文件」,步骤清晰,代码可直接复用关键特性:支持合并/单文件两种保存模式、自动下载图片并引用、中文乱码防护、非法文件名过滤,满足日常整理知乎回答的需求新手友好:无需复杂配置,仅需修改知乎问题URL即可运行,全程无坑,5分钟内可看到运行结果灵活扩展:支持进阶优化(登录、分页、格式完善),可根据个人需求调整功能。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1232

C# —— switch语句

int b = 10;break;

一个新人博客,愿多多支持。 1664

YOLOv11改进策略【模型轻量化】| 替换骨干网络 CVPR-2023 FasterNet 高效快速的部分卷积块

本文记录的是基于FasterNet的YOLOv11轻量化改进方法研究。FasterNet的网络结构借鉴 CNN 的设计理念,通过提出的PConv减少推理时的计算和内存成本,同时减少通道数并增加部分比例,降低延迟,并通过后续的PWConv来弥补特征信息可能缺失的问题,提高了准确性。本文在替换骨干网络中配置了原论文中的和六种模型,以满足不同的需求。

Limiiiing的博客 2030

Multi-Agent

Multi-Agent System(MAS,多代理系统)是分布式人工智能(DAI)领域皇冠上的明珠,其核心思想是通过多个自主、交互、目标导向的智能体(Agent)的协同与竞争,解决单智能体无法或难以高效处理的复杂问题——包括大规模资源调度、多模态数据理解与决策、复杂软件架构的自治运维、甚至未来城市级的交通与能源管理。本文将以结构化分析推理和第一性原理思考。

AI智能探索者的博客 407

c# switch 语句_C#程序演示switch语句的示例

c# switch 语句A switch statement allows checking a variable/value with a list of values (cases) and executing the block associated with that case. switch语句允许使用值(案例)列表检查变量/值,并执行与该案例关联的块。 Syntax: 句法: ...

2642

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

C#中的Switch语句【C#】

C#中的Switch语句 题目描述 编写一个控制台应用,实现以下功能:根据输入的字符,输出通过、不通过和输入成绩无效。 (1)无论输入A、B、C、D,都输出通过; (2)输入E,则输出不通过; (3)输入其它,则输出"Score Invalid!" 输入 输入[A,B,C,D,E]中一个字母。如果输入其它,则会输出无效 输出 无论输入A、B、C、D,都输出通过;输入E则输出不通过;...

C++的星空 966

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

关于C#中switch语句的一点注意

(最先发表在www.kunwsoft.com)?????? ?大家肯定对switch语句并不陌生,它能够让程序根据控制表达式的值,从多个动作中作出选择(从逻辑过程看,和多分支语句if-else有些相似)。在C++和java中也有这一语句,不过在C#中,这一语句则有了些变化。先看下边一个例子:?????switch(letter)???????? {????????????????????????

C#学习笔记 1789

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

C#的switch语句

本文介绍了switch语句的语法与应用。switch语句通过判断变量值实现代码分支,基本结构为switch(变量){case常量:代码;break;...}。文章详细说明了其特点:支持多个case、可选default、允许嵌套和贯穿(多个case共享代码块)。最后通过学生成绩评级案例演示了实际应用,先使用if-else将分数转换为等级,再用switch输出对应评级(A-E)。这个案例展示了switch语句与条件判断的配合使用方式。

a704981991的博客 590

[C#]C# switch case 语句

C# 中switch条件语句也是一种很常用的选择语句,和if条件语句不同,它只能针对某表达式的值做出判断,从而决定程序执行哪一段代码。

FL1768317420的博客 3850

c#语言switch+case用法,C# switch case语句

C# switch case 语句也是条件语句的一种,与上一节介绍的《C# if else语句》是类似的,但在判断条件的选择上会有一些局限性。具体的语法形式如下。switch(表达式){case 值 1:语句块 1;break;case 值 2:语句块 2;break;...default:语句块 n;break;}在这里,switch 语句中表达式的结果必须是整型、字符串类型、字符型、布尔型等数...

weixin_33974017的博客 3329

c#——switch case语句

注意switch语句中case的值只能是用2,4,“aaa”等常量,不能是变量、表达式。casei//错误case中值只能用2,4,“aaa”等常量,不能写变量。Console.WriteLine(“你输入的{0}没有意义”,i);Console.WriteLine(“你输入的和程序假定的一样!Console.WriteLine(“你输入的是整钱!Console.WriteLine(“你输入的是整钱!Console.WriteLine(“你真2!...

weixin_41883890的博客 1万+

C#(八)之判断语句IF SWITCH

C#中的判断语句IF/SWITCH 1:IF / ELSEIF / ELSE If 满足条件择执行; 多个elseif时,其中有一个满足条件,那个之后的elseif都不会执行; else上面都不满足时执行; C#支持三元运算符,用法同于PHP bool a = true; bool c = true; bool b = false; ...

camellia的博客 551

C#中switch语句注意

大家肯定对switch语句并不陌生,它能够让程序根据控制表达式的值,从多个动作中作出选择(从逻辑过程看,和多分支语句if-else有些相似)。在C++和java中也有这一语句,不过在C#中,这一语句则有了些变化。先看下边一个例子: switch(letter) { case a: Console.WriteLine("aaaaa"); case b: Console.WriteLine("

深度Java 7502

C# switch 语句

SUN_sun_i的博客 303
上一篇: C# 中的函数式接口与 Java 的对应关系
下一篇: C#实现n皇后问题的回溯和递归算法(包含源代码)
普通网友
博客等级 码龄3年 84粉丝 98原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值