【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.rhkb.cn/news/82017.html

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

相关文章

进程通信常见方式

目录 通信通信概述 通信的主要方式 进程同步机制--低级进程通信 高级通信工具 共享存储器系统(Shared-Memory System&#xff09; 管道(pipe)通信系统 客户机-服务器系统(Client-Server system)---套接字&#xff08;Socket&#xff09; 客户机-服务器系统(Client-Serv…

微信小程序开发【从0到1~入门篇】2023.08

一个小程序主体部分由三个文件组成&#xff0c;必须放在项目的根目录&#xff0c;如下&#xff1a; 文件必须作用app.js是小程序逻辑app.json是小程序公告配置app.wxss否小程序公告样式表 3. 小程序项目结构 一个小程序页面由四个文件组成&#xff0c;分别是&#xff1a; 文…

JUC并发编程(JUC核心类、TimeUnit类、原子操作类、CASAQS)附带相关面试题

目录 1.JUC并发编程的核心类 2.TimeUnit&#xff08;时间单元&#xff09; 3.原子操作类 4.CAS 、AQS机制 1.JUC并发编程的核心类 虽然java中的多线程有效的提升了程序的效率&#xff0c;但是也引发了一系列可能发生的问题&#xff0c;比如死锁&#xff0c;公平性、资源管理…

Redis—持久化

这里写目录标题 AOF三种写回策略写回策略的优缺点AOF 重写机制AOF后台重写AOF优缺点使用命令 RDBRDB 持久化的工作原理执行快照时&#xff0c;数据能被修改吗RDB 持久化的优点RDB 持久化的缺点 混合持久化大key对持久化的影响 AOF 保存写操作命令到日志的持久化方式&#xff0…

MyBatis核心 - SqlSession如何通过Mapper接口生成Mapper对象

书接上文 MyBatis – 执行流程 我们通过SqlSession获取到了UserMapper对象&#xff0c;代码如下&#xff1a; // 获取SqlSession对象 SqlSession sqlSession sqlSessionFactory.openSession();// 执行查询操作 try {// 获取映射器接口UserMapper userMapper sqlSession.get…

什么CRM客户管理系统好用?公司规模不大,有推荐吗?

CRM客户管理系统是什么&#xff1f; 一句话来概括&#xff1a;CRM是客户关系管理的缩写&#xff0c;指企业通过建立客户档案、跟进客户需求、提供优质服务来维系客户关系的一种管理模式。通常我们认知中的CRM管理系统软件&#xff0c;往往作用于企业的三个流程&#xff1a; 1…

机器学习笔记之优化算法(十)梯度下降法铺垫:总体介绍

机器学习笔记之优化算法——梯度下降法铺垫&#xff1a;总体介绍 引言回顾&#xff1a;线搜索方法线搜索方法的方向 P k \mathcal P_k Pk​线搜索方法的步长 α k \alpha_k αk​ 梯度下降方法整体介绍 引言 从本节开始&#xff0c;将介绍梯度下降法 ( Gradient Descent,GD ) …

学习总结(TAT)

好久都没交总结了&#xff0c;今天把之前的思路和错误整理了一下&#xff1a; 在服务器和客户端两侧&#xff0c;不可以同时先初始化获取输入流&#xff0c;否则会造成堵塞&#xff0c;同时为这位作者大大打call&#xff1a; (3条消息) 关于Java Socket和创建输入输出流的几点…

实战项目ssm权限系统 3-自定义注解+AOP拦截器记录登录日志

一 登录日志以及操作操作日志的操作 1.1 登录日志配置收集 1.1.1 编写log入库的service层接口 1.接口&#xff1a;在spring-security模块中 2.实现类&#xff1a;在service-system模块中 3.dao层&#xff1a;在service-system模块中 1.1.2 过滤器添加log记录 在过滤器中&…

01_什么是ansible、基本架构、ansible工作机制、Ansible安装、配置主机清单、设置SSH无密码登录等

1.什么是ansible 1.1.基本介绍 1.2.基本架构 1.3.基本特征 1.4.优点 1.5.ansible工作机制 2.Ansible安装 2.1.机器准备 2.2.安装ansible 2.2.1.安装epel源 2.2.2.安装ansible 2.2.3.查看ansible版本 2.2.4.树状结构展示文件夹 2.2.4.1.其中ansible.cfg的内容如下 2.2.4.2.host的…

ts中interface自定义结构约束和对类的约束

一、interface自定义结构约束对后端接口返回数据 // interface自定义结构 一般用于较复杂的结构数据类型限制 如后端返回的接口数据// 首字母大写;用分割号隔开 interface Iobj{a:number;b:string } let obj:Iobj {a:1,b:2 }// 复杂类型 模拟后端返回的接口数据 interface Il…

管理类联考——逻辑——论证逻辑——汇总篇——真题和典例——削弱

削弱 199-2014-10-41——割裂关系 卫计委的报告表明&#xff0c;这些年来医疗保健费的确是增加了。可见&#xff0c;我们每个人享受到的医疗条件大大改善了。 以下哪项对上述结论提出最严重的质疑? A.医疗保健费的绝大部分用在了对高危病人的高技术强化护理上。 B.在不增加费…

Spring事务管理

目录 1.什么是事务 事务的四大特性&#xff08;ACID&#xff09; 2.Spring中的事务 2.1PlatformTransactionManager 2.2TransactionDefinition 2.3TransactionStatus 3.编程式事务 4.声明式事务&#xff08;Transactional&#xff09; 5. 事务属性 5.1 隔离性(isolat…

Linux-GPIO 配置pull up、pull down、no pull

author daisy.skye的博客_CSDN博客-Qt,嵌入式,Linux领域博主 https://blog.csdn.net/qq_40715266?typeblog 系列基于RK3568的Linux驱动开发——GPIO知识点&#xff08;一&#xff09;_daisy.skye的博客-CSDN博客基于RK3568的Linux驱动开发—— GPIO知识点&#xff08;二&#…

【VisualGLM】大模型之 VisualGLM 部署

目录 1. VisualGLM 效果展示 2. VisualGLM 介绍 3. VisualGLM 部署 1. VisualGLM 效果展示 VisualGLM 问答 原始图片 2. VisualGLM 介绍 VisualGLM 主要做的是通过图像生成文字&#xff0c;而 Stable Diffusion 是通过文字生成图像。 一种方法是将图像当作一种特殊的语言进…

C语言刷题------(2)

C语言刷题——————&#xff08;2&#xff09; 刷题网站&#xff1a;题库 - 蓝桥云课 (lanqiao.cn) First Question&#xff1a;时间显示 题目描述 小蓝要和朋友合作开发一个时间显示的网站。 在服务器上&#xff0c;朋友已经获取了当前的时间&#xff0c;用一个整数表…

Nginx与docker配置安装

目录&#xff1a; Nginx的安装配置&#xff1a; 1、安装依赖包&#xff1a; 2、下载Nginx安装包&#xff1a; 3、解压Nginx压缩包&#xff1a; 4、配置Nginx编译环境&#xff1a; 5、编译并安装Nginx&#xff1a; 6、安装完Nginx后&#xff0c;可以切换到Nginx的安装目录…

python版《羊了个羊》游戏开发第一天

Python小型项目实战教学课《羊了个羊》 一、项目开发大纲&#xff08;初级&#xff09; 版本1.0&#xff1a;基本开发 课次 内容 技术 第一天 基本游戏地图数据 面向过程 第二天 鼠标点击和移动 面向对象 第三天 消除 设计模式&#xff1a;单例模式 第四天 完整…

clion使用qDebug()控制台无输出的可能解决方法

给项目添加一个环境变量 QT_ASSUME_STDERR_HAS_CONSOLE1参考网址&#xff1a;https://youtrack.jetbrains.com/issue/CPP-24369/Auto-enable-qDebug-console.log-output-to-the-debug-console-for-Qt-projects-on-Windows

Flutter:文件读取—— video_player、chewie、image_picker、file_picker

前言 简单学习一下几个比较好用的文件读取库 video_player 简介 用于视频播放 官方文档 https://pub-web.flutter-io.cn/packages/video_player 安装 flutter pub add video_player加载网络视频 class _MyHomePageState extends State<MyHomePage> {// 控制器late…