C# 控制流语句详解

C#提供了多种控制流语句,允许开发者根据不同的条件执行不同的代码分支。本篇博客将详细介绍if-elseswitchwhiledo-whileforforeach循环,以及breakcontinuegotoreturn语句。

if-else 语句

if-else语句用于基于条件执行不同的代码分支。

int num = 10;
if (num > 5)
{Console.WriteLine("Number is greater than 5");
}
else
{Console.WriteLine("Number is not greater than 5");
}

switch 语句

switch语句允许基于不同的情况执行不同的代码块。

int month = 4;
switch (month)
{case 1:Console.WriteLine("January");break;case 2:Console.WriteLine("February");break;// 更多的casedefault:Console.WriteLine("Invalid month");break;
}

多个case

switch语句中,一个case后面可以跟随多个标签,表示多个值可以执行相同的代码。

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

while 循环

while循环会在给定条件为真时不断执行代码块。

int i = 1;
while (i <= 5)
{Console.WriteLine(i);i++;
}

do-while 循环

do-while循环与while循环类似,但它至少会执行一次,因为条件判断位于循环体之后。

int i = 1;
do
{Console.WriteLine(i);i++;
} while (i <= 5);

for 循环

for循环是一种常见的循环结构,由初始化表达式、条件表达式和迭代表达式组成。

for (int i = 1; i <= 5; i++)
{Console.WriteLine(i);
}

foreach 循环

foreach循环用于遍历数组或集合中的每个元素。

int[] numbers = { 1, 2, 3, 4, 5 };
foreach (int num in numbers)
{Console.WriteLine(num);
}

break 语句

break语句用于立即退出循环或switch语句。

for (int i = 0; i < 10; i++)
{if (i == 5){break; // 当i等于5时退出循环}Console.WriteLine(i);
}

continue 语句

continue语句用于跳过当前循环的剩余部分,直接进入下一次迭代。

for (int i = 0; i < 10; i++)
{if (i % 2 == 0){continue; // 跳过偶数,只打印奇数}Console.WriteLine(i);
}

goto 语句

goto语句允许程序跳转到代码中的特定标签位置。

goto End; // 跳转到标签End的位置End:
Console.WriteLine("Reached the end.");

return 语句

return语句用于从方法中返回,可以返回一个值(对于非void方法)或者什么都不返回(对于void方法)。

int Add(int a, int b)
{return a + b; // 返回两个数的和
}void PrintMessage()
{Console.WriteLine("Hello World!");return; // 从方法中返回
}

控制流语句是编程中不可或缺的部分,它们允许开发者根据不同的条件和需求执行不同的代码路径。希望这篇博客能帮助你更好地理解和使用C#中的控制流语句。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/19842.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch 分布式搜索、分布式索引、分布式存储详解

Elasticsearch 分布式搜索、分布式索引、分布式存储详解 Elasticsearch 分布式搜索、分布式索引、分布式存储详解一、引言二、Elasticsearch 分布式搜索详解1. 分片和副本2. 查询过程中的搜索流程3. 搜索结果的合并与排序 三、Elasticsearch 分布式索引详解四、Elasticsearch 分…

Mac终端安装brew(亲测有效)

找了好久&#xff0c;七七八八都是报访问不到github的问题&#xff0c;下面这个亲测有效&#xff0c;方便快捷&#xff0c;可以试试 # 安装脚本&#xff0c;直接执行&#xff0c;按照提示输入即可 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/ma…

数据结构栈(C语言Java语言的实现)相关习题

文章目录 栈概念以及代码实现例题[232. 用栈实现队列](https://leetcode.cn/problems/implement-queue-using-stacks/)[1614. 括号的最大嵌套深度](https://leetcode.cn/problems/maximum-nesting-depth-of-the-parentheses/)[234. 回文链表](https://leetcode.cn/problems/pal…

鸿蒙ArkTS声明式开发:跨平台支持列表【透明度设置】 通用属性

透明度设置 设置组件的透明度。 说明&#xff1a; 开发前请熟悉鸿蒙开发指导文档&#xff1a; gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。 从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版…

Vue3-Vite-ts 前端生成拓扑图,复制即用

完整代码&#xff0c;复制即可用&#xff0c;样式自调 试过 jointjs dagre-d3 vis&#xff0c;好用一点 方法1&#xff1a;Vis.js npm install vis-network <template><div id"mynetwork" class"myChart" :style"{width: 100%, height: 9…

【UE5:CesiumForUnreal】——加载无高度地形数据

目录 1.实现目的 2.数据准备 2.1下载数据 2.2 数据切片 3.加载无地形数据 1.实现目的 在CesiumForUnreal插件中&#xff0c;我们加载地图和地形图层之后&#xff0c;默认都是加载的带有高程信息的地形数据&#xff0c;在实际的项目和开发中&#xff0c;有时候我们需要加载无…

lipo制作通用版本静态库

文章目录 目的了解多架构的maclipo如何利用lipo编译通用版本静态库lipo 命令整理扩展目的 主要是使用lipo命令在macOS上创建通用版本的静态库(.a文件),来支持多种架构,如arm64,x86_64。 学习目的: 了解mac 不同架构arm64, x86_64了解lipo命令了解多架构的mac 随着appl…

数据挖掘 | 实验三 决策树分类算法

文章目录 一、目的与要求二、实验设备与环境、数据三、实验内容四、实验小结 一、目的与要求 1&#xff09;熟悉决策树的原理&#xff1b; 2&#xff09;熟练使用sklearn库中相关决策树分类算法、预测方法&#xff1b; 3&#xff09;熟悉pydotplus、 GraphViz等库中决策树模型…

【期末速成】——计算机组成原理(1)概述

目录 一、什么是计算机的组成 二、冯诺依曼体系结构计算机的特点 三、计算机系统的层次结构 四、机器语言、汇编语言、高级语言, 五、 编译程序、解释程序、汇编程序 六、已知主频、CPI计算程序运行时间 一、什么是计算机的组成 计算机的组成可以分为五个部件和两个信息…

数据通信中,证书的作用?

标签: 证书; 证书的作用;数据通信; 在计算机信息安全领域,证书(Certificate)起着至关重要的作用,主要用于确保通信的安全性、完整性和可信性。以下是证书的主要作用及其相关概念的解释: 1. 身份验证 证书的一个主要作用是验证身份。在网络通信中,证书用于确认通信…

代码随想录算法训练营第二十四天|

[LeetCode] 77. 组合 [LeetCode] 77. 组合 文章解释 [LeetCode] 77. 组合 视频解释 题目: 给定两个整数 n 和 k&#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;n 4, k 2 输出&#xff1a; [[2,4…

针对固定定位/绝对定位元素实现水平垂直居中的方法

知道具体宽度情况下 水平居中位置:(总宽度 - 元素宽度) / 2 垂直居中位置:(总高度 - 元素高度) / 2不明确具体宽度情况下 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" co…

VMware虚拟机安装Ubutu

打开vmware按步骤安装 选择安装虚拟机路径 选择下载好的镜像 开启虚拟机 等待 回车确认 空格选择/取消 等待等待好按回车 输入用户名&#xff0c;密码就好了

树形结构-CRUD接口

先看一下效果&#xff1a;整体的效果 新增效果 --默认值是 default 修改效果 - 大致效果如上 --------------------------------------------------------------------------------------------------------------------------------- 下面讲解代码如何实现的 根据你使用…

SpringBoot发送Gmail邮件

1. 登录Gmail Gmail网址 点击右上角“小齿轮”&#xff0c;然后点击"查看所有设置" 点击“转发和 POP/IMAP”&#xff0c;按图中设置&#xff0c;然后点击保存&#xff1a; 2. 启用两步验证(https://myaccount.google.com/security) 登录上述网址&#xff0c;找…

测试FaceRecognitionDotNet报错“Error deserializing object of type int”

FaceRecognitionDotNet宣称是最简单的.net人脸识别模块&#xff0c;其内部使用Dlib、DlibDotNet、OpenCVSharp等模块实现人脸识别&#xff0c;网上有不少介绍文章。实际测试过程中&#xff0c;在调用FaceRecognition.Create函数创建FaceRecognition实例对象时&#xff0c;会报如…

过滤器和拦截器有什么区别?

过滤器&#xff08;filter&#xff09;是基于servlet容器回调实现的&#xff0c;可以拦截请求和响应的所有内容&#xff0c;包括静态资源和动态资源。 拦截器&#xff08;Interceptor&#xff09;&#xff1a;基于Spring框架&#xff0c;只作用于Spring的上下文中。拦截器只能…

Git fatal: refusing to merge unrelated histories问题处理

情况介绍 我一开始在本地创建了仓库git init&#xff0c;有了一些提交。然后后面准备上传到github时&#xff0c;在github上创建了仓库&#xff0c;选了License&#xff0c;也就是说远程仓库也有了一个提交&#xff08;即生成License的提交&#xff09;。 在本地添加remote后…

易语言推箱子游戏(附带源码)

易语言推箱子游戏 易语言易语言的安装易语言功能特色易语言安装步骤易语言常见问题 导入游戏源码部分源码领取源码下期更新预报 易语言 易语言&#xff08;EPL&#xff09;是一门以中文作为程序代码编程语言&#xff0c;其以“易”著称&#xff0c;创始人为吴涛。易语言早期版…

linux同步搭建多台服务器

前言&#xff1a; 如果在安装服务器的过程中&#xff0c;需要安装多台服务器&#xff0c;同样的配置&#xff0c;同样的步骤就可以使用此方法&#xff0c;搭建集群同步安装 1.配置网卡 想要两台机器进行同步的话&#xff0c;必须网段是同样的&#xff0c;保持在同一网段并且能…