【C# 基础精讲】循环语句:for、while、do-while

在这里插入图片描述

循环语句是C#编程中用于重复执行一段代码块的关键结构。C#支持forwhiledo-while三种常见的循环语句,它们允许根据条件来控制代码块的重复执行。在本文中,我们将详细介绍这三种循环语句的语法和使用方法。

请添加图片描述

for循环

for循环是一种常见的循环结构,用于在给定条件下重复执行代码块一定的次数。它的一般语法如下:

for (初始化表达式; 循环条件; 迭代表达式)
{// 循环体,重复执行的代码块
}

初始化表达式用于初始化循环控制变量,通常是一个赋值表达式。循环条件是一个返回布尔值(truefalse)的表达式,当为true时,继续执行循环体;当为false时,退出循环。迭代表达式用于在每次循环结束时更新循环控制变量的值。

例如,我们可以使用for循环来输出从1到10的整数:

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

在这个例子中,i是循环控制变量,初始值为1,每次循环结束后,i的值增加1,当i的值大于10时,循环结束。

while循环

while循环用于在给定条件为真(true)的情况下,重复执行代码块。它的一般语法如下:

while (循环条件)
{// 循环体,重复执行的代码块
}

循环条件是一个返回布尔值(truefalse)的表达式,当为true时,执行循环体;当为false时,退出循环。

例如,我们可以使用while循环来输出从1到5的整数:

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

在这个例子中,循环开始时,i的值为1,当i的值小于等于5时,输出i的值,并将i的值增加1,直到i的值大于5时,循环结束。

do-while循环

do-while循环是一种后测试循环,它先执行循环体中的代码块,然后再检查循环条件。如果循环条件为真(true),则继续执行循环,否则退出循环。do-while循环保证循环体至少会执行一次。

它的一般语法如下:

do
{// 循环体,重复执行的代码块
}
while (循环条件);

循环条件是一个返回布尔值(truefalse)的表达式,当为true时,继续执行循环体;当为false时,退出循环。

例如,我们可以使用do-while循环来输出从1到5的整数:

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

在这个例子中,循环开始时,i的值为1,循环体先输出i的值,并将i的值增加1,然后再检查i的值是否小于等于5,由于i的值小于等于5,所以继续执行循环体,直到i的值大于5时,退出循环。

循环控制语句:break和continue

在循环体中,我们还可以使用breakcontinue语句来控制循环的行为。

  • break语句用于立即终止循环,并跳出循环体。
  • continue语句用于跳过当前

循环的剩余代码,并开始下一次循环迭代。

这些循环控制语句通常与条件语句结合使用,以满足更复杂的循环逻辑。

for (int i = 1; i <= 10; i++)
{if (i == 5){break; // 当 i 等于 5 时,终止循环}if (i % 2 == 0){continue; // 当 i 是偶数时,跳过后面的代码,开始下一次循环迭代}Console.WriteLine(i);
}

在上述例子中,当i的值等于5时,break语句终止循环。而在i是偶数的情况下,continue语句跳过后面的代码,开始下一次循环迭代。

总结

循环语句是C#编程中非常重要的控制结构,它们允许根据条件来重复执行一段代码块。forwhiledo-while是最常见的循环语句,每种循环语句在不同场景下有其特定的应用。通过合理使用循环语句,我们可以编写出更加灵活和高效的C#程序。希望本文对您理解C#中的循环语句有所帮助,祝您在C#编程的学习过程中取得更多进展!

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

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

相关文章

【Linux】云服务器自动化部署VuePress博客(Jenkins)

前言 博主此前是将博客部署在 Github Pages&#xff08;基于 Github Action&#xff09;和 Vercel 上的&#xff0c;但是这两种部署方式对于国内用户很不友好&#xff0c;访问速度堪忧。因此将博客迁移到自己的云服务器上&#xff0c;并且基于 Jenkins&#xff08;一款开源持续…

代码审计-Thinkphp框架审计前置知识点

代码审计必备知识点&#xff1a; 1、代码审计开始前准备&#xff1a; 环境搭建使用&#xff0c;工具插件安装使用&#xff0c;掌握各种漏洞原理及利用,代码开发类知识点。 2、代码审计前信息收集&#xff1a; 审计目标的程序名&#xff0c;版本&#xff0c;当前环境(系统,中间件…

OCR让纸质文档秒变电子文档,让自动驾驶成为现实

OCR文字识别具有广泛的应用范围&#xff0c;以下是一些常见和广泛应用的领域&#xff1a; 1. 文档数字化&#xff1a;OCR可以将印刷的文档、书籍、报纸等纸质文档转换为可编辑和可搜索的电子文本&#xff0c;从而实现文档的数字化存储和管理。这在图书馆、档案馆、企业和政府机…

webpack基础知识十:与webpack类似的工具还有哪些?区别?

一、模块化工具 模块化是一种处理复杂系统分解为更好的可管理模块的方式 可以用来分割&#xff0c;组织和打包应用。每个模块完成一个特定的子功能&#xff0c;所有的模块按某种方法组装起来&#xff0c;成为一个整体(bundle) 在前端领域中&#xff0c;并非只有webpack这一款…

什么?200?跨域?

情景复现 今天我遇到了一件很奇怪的事情就是&#xff0c;当我请求后端网关&#xff0c;然后通过网关去请求相应的服务&#xff0c;都进行了跨域处理 但是&#xff0c;奇怪的是我在请求的时候&#xff0c;回来的响应码是200&#xff0c;但是报错了&#xff0c;报的还是200的同…

Python-OpenCV中的图像处理-图像阀值

Python-OpenCV中的图像处理-图像阀值 图像阈值单阈值自适应阈值Otsus二值化 图像阈值 单阈值 与名字一样&#xff0c;这种方法非常简单。但像素值高于阈值时&#xff0c;我们给这个像素赋予一个新值&#xff08;可能是白色&#xff09;&#xff0c;否则我们给它赋予另外一种颜…

Unity之ShaderGraph 节点介绍 Procedural节点

程序化 噪声Gradient Noise&#xff08;渐变或柏林噪声&#xff09;Simple Noise&#xff08;简单噪声&#xff09;Voronoi&#xff08;Voronoi 噪声&#xff09; 形状Ellipse&#xff08;椭圆形&#xff09;Polygon&#xff08;正多边形&#xff09;Rectangle&#xff08;矩形…

Oracle连接数据库提示 ORA-12638:身份证明检索失败

ORA-12638 是一个 Oracle 数据库的错误代码&#xff0c;它表示身份验证&#xff08;认证&#xff09;检索失败。这通常与数据库连接相关&#xff0c;可能由于以下几个原因之一引起&#xff1a; 错误的用户名或密码&#xff1a; 提供的数据库用户名或密码不正确&#xff0c;导致…

在家查阅下载AACR(美国癌症研究学会)数据库文献

AACR&#xff08;美国癌症研究学会&#xff09;简介&#xff1a; 美国癌症研究学会American Association for Cancer Research创建于1907年&#xff0c;是世界上成立最早、规模最大的致力于全面、创新和高水准癌症研究的科学组织。其出版物包括7种正式出版的期刊&#xff1a; …

Client not connected, current status:STARTING

今天项目集成Seata时遇到一个奇怪的异常&#xff0c;在此记录一下。 Linux环境安装Seata&#xff0c;使用Nacos作为配置中心、注册中心&#xff1b; Linux已开放端口&#xff1a;8848、7091、8091 在我Windows环境下可以看到Nacos运行正常&#xff0c;Seata运行也正常&#…

[保研/考研机试] 括号匹配问题 C++实现

题目描述&#xff1a; 在某个字符串(长度不超过100)中有左括号、右括号和大小写字母&#xff1b;规定(与常见的算数式子一样)任何一个左括号都从内到外与在它右边且距离最近的右括号匹配。写一个程序&#xff0c;找到无法匹配的左括号和右括号&#xff0c;输出原来的字符串&am…