05--C#流程控制

2023-05-16

前面讲到的都是顺序结构,顺序结构的意思就是程序从main函数进入,从上到下一行一行的执行,不会落下任何一行,这章的内容就会讲到流程控制相关的几个结构:分支结构、选择结构、循环结构;

分支结构:if if-else 三元表达式

选择结构: if else if switch-case

循环结构:for whie do-while foreach

分支结构

if语句:

语法:

if(判断条件)

{

        要执行的代码:

}

判断条件:一般为关系表达式或者bool类型的值

执行过程:程序运行到if处,首先判断if后小括号中的判断条件,若条件成立,则运行要执行的代码;若不成立,则跳过if结构,继续向下执行;

if结构的特点:先判断,后执行,有可能一行代码都不执行

if-else 语句:

语法:

if(判断条件)

{

        执行代码1;

}

else

{

        执行代码2;

}

执行过程:程序执行到if处,首先判断if后的判断条件是否为true,为true则执行代码1; 为false,则执行代码2;执行完成后,跳出if-else 结构

选择结构

if else-if 语句

作用:用来处理多条件的区间性的判断,所以被分为选择条件结构

语法:

if(判断条件1)

{

        执行代码1;

 }

else if(判断条件2)

{

        执行代码2;

}

.....

else

{

         执行代码n;

}

执行过程:程序首先判断第一个if括号好的判断条件1,若为true,则执行代码1,执行完成后,跳出整个if else if 结构; 若为false,则继续向下判断,依次的判断每一个if判断的条件,如果都为false,则看是否有else(else是可以省略的),若有else,则执行else后的代码n,若无else,则直接退出结构什么都不做;

switch  case 语句:

用来处理多条件的定值判断

语法:

switch (变量或者表达式的值)

{

        case 值:要执行的代码;

        break;

        case 值:要执行的代码;

        break;

        ...........

        default:要执行的代码;

        break;

}

执行过程:程序执行到switch处,首先将括号中变量或者表达式的值计算出来,然后拿着这个值依次跟每个case后面所带的值进行匹配,一旦匹配成功,则执行case后的代码,执行完成后,遇break则退出switch case结构;若没有匹配成功,则进入default 执行后面的代码,若没有default,则该结构什么都不做;

对于多个定值都需要同样的代码处理时,代码可以写为:

switch(变量或者表达式的值)

{

        case 值1:

        case 值2:

        case 值3: 要执行的代码;

        break;

        case 值4:

        case 值5:要执行的代码;

        break;

        default: 要执行的代码;

        break;      

}

循环结构

while 循环

语法:

while(循环条件)

{

        循环体;        

}

执行过程:程序运行到while处,首先判断while后的循环条件是否为true,若为true,则执行while的循环体,执行完后,继续判断while后的循环条件,若依然为true,这继续执行循环体,若为false,则跳出while循环; 有可能一遍循环都不执行;

从执行过程来看,写循环一定要赋予其可以推出循环的条件,否则循环条件一直为true,那么循环就会一直循环,也就是死循环,写代码应避免死循环的可能性; 

do while 循环

语法:

do

{

        循环体;

}while(循环条件);

执行过程:程序首先会执行do中的循环体,执行完成后,去判断do-while循环条件,如果成立,则继续执行do中的循环体,如果不成立,则跳出do-while循环。

特点:先循环,再判断,最少执行一遍循环体。

for循环

语法:

for(表达式1;表达式2;表达式3)

{

        循环体;

}

表达式1--一般为声明循环变量,记录循环的次数(int i=0)

表达式2--一般为循环条件(i<10)

表达式3--一般为改变循环条件的代码,使循环条件终有一天不再成立(i++)

执行过程:程序首先执行表达式1,声明了一个循环变量用来记录循环的次数,然后执行表达式2,判断循环条件是否成立,如果表达式2返回的结果为true,则执行循环体,当执行完循环体吼,执行表达式3,然后执行表达式2继续判断循环条件是否成立,如果成立则继续执行循环体,如果不成立,则跳出for循环。

已知循环次数的一般用for循环

三元表达式

语法:表达式1?表达式2:表达式3;

表达式1一般为一个关系表达式

如果表达式1的值为true,那么表达式2的值就是整个三元表达式的值;

如果表达式1的值为false,那么表达式3的值就是整个三元表达式的值;

注意:表达式2的结果类型必须跟表达式3的结果类型一致,并且也要跟整个三元表达式的结果类型一致。

凡是能用if-else能做的事基本都可以用三元表达式来做

break 关键字:

1)可以跳出switch-case结构;

2)可以跳出当前循环结构,也只能跳出当前循环结构;

一般break配合if来使用,满足特定的条件以后break;

continue关键字:

 continue关键字: 立即结束本次循环(不再执行continue以后的语句),判断循环条件,如果成立,则进入下一次循环,否则退出循环;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

05--C#流程控制 的相关文章

随机推荐

  • csdn排名出了Bug了?一场因排名引发的血案!

    一石激起千层浪 xff0c 排名让人很彷徨 xff01 很多人已经注意到了 xff0c 博客的排名出现了非常大的变化 xff01 不只是排名 xff0c CSDN最近的动作可是很频繁 xff0c 让我们来细数CSDN那些改变 但是 xff0
  • CSDN博主排名更新,看看原来的前1000名博主现在的排名如何

    CSDN博主排名更新 xff0c 看看新规则 原来的排名参考 xff1a CSDN前1000名博主 博客原排名新排名stpeace 1 25yuanmeng001 2 143yjclsx 3 72phphot 4 427833Augusdi
  • 程序员的求爱日:比1024多一点,1025,要你爱我!

    转眼又要到了1024 xff0c 还记得去年的1024活动 xff0c 我写一篇 xff1a 今天是程序员节 xff0c 明天就是求爱日啦 xff01 今年的活动 xff1a 程序员邂逅鼓励师的正确姿势 xff01 鼓励师 这个名词 xff
  • C# 绘制箭头的方法,仿微信截图的箭头

    C 绘制箭头的方法 xff0c 仿微信截图的箭头 效果见下图 xff0c 实际上还是有区别的 xff0c 箭头的起点处微信的是圆端 xff0c 而我实现的是尖端 说说我的实现吧 xff0c 实现方法其实是划线 xff0c 线的两端都要设置端
  • CSDN最近变化有点快

    文章内容原来在右边 xff0c 现在移到了左边 不过博客设置中的皮肤缩略图还没有变 归档样式变了 系统通知类型越来越多
  • 简单功能强大的jQuery在线图片裁剪插件croppic

    帝国CMS后台文章编辑功能的标题图片 xff0c 也就是文章封面设置功能用起来非常的不习惯不好用 xff0c 所以考虑换一个更好用的 xff0c 在网上找了一下 xff0c 最后觉得croppic最不错 xff0c 这里给大家分享一下 cr
  • 网站安全情况自查表怎么填?

    今天收到相关单位一个文档要填写 xff0c 包括 xff1a 表二 xff1a 信息系统运营使用单位填写 xff0c 表三 xff1a 网站安全情况自查表 xff0c 这个怎么填写呢 xff1f 按我个人理解 xff0c 按网站备案的信息填
  • 又是一年1024,去年的1025你是怎么过的?

    除非你在等车 xff0c 回首看看 xff0c 没有人不会觉得时间过得太快了吧 xff01 又是一年1024 xff0c 去年的1025你是怎么过的 xff1f 去年的 程序员的求爱日 比1024多一点 1025 要你爱我 前年的 今天是程
  • 2020年终总结——走在代码公益的路上

    从2012年加入 CSDN 博客 xff0c 已经过去了8个年头 xff0c 有收获也有感慨 xff1b 目前总排名24 xff0c 虽然排名已经很靠前了 xff0c 也是输出了很多内容 xff0c 但不像一些人输出的都是比较系统性的内容
  • nginx 实现图片防盗链功能

    在搜索浏览网页的时候 xff0c 发现一篇文章是从我的个人网站转载的 xff0c 但是没有注明出处 xff0c 文章中的图片也没有本地化处理 xff0c 还是从我的服务器请求 xff0c 这就无形中增加了我的服务器的开销 xff0c 于是有
  • 使用element ui + vuedraggable 实现页面控件拖拽排序

    项目要实现一些控件的拖拽排序 从而找到了这款vuedraggable控件 如上图要实现这些控件的拖拽排序 这是拖拽后 由于公司网络的原因 xff0c 项目没有使用npm xff0c 都是使用的引入的js lt script type 61
  • Winform界面开发教程 - 如何对应用程序界面的组织布局

    在设计界面的时候 xff0c 不管是在Web端 xff0c 还是在WinForm端 xff0c 或者是WPF或者移动界面等应用上 xff0c 我们对界面的组织布局 xff0c 一直是比较有趣的话题 xff0c 而组织界面的好坏从用户的感受来
  • 【油猴脚本 Greasemonkey】GM_xmlhttpRequest内部实现原理

    好久没在CSDN发文章了 xff0c 自从有了自己的网站 xff0c 自己的想怎么折腾就怎么折腾 xff0c 逐步的完善 另一方面 xff0c 技术上一直在吃老本 xff0c 没什么进步 xff0c 也没什么可发的 最近在写一个Chrome
  • CentOS6.5下安装远程桌面服务端软件VNC Server

    VNC 使您可以 远程 访问和控制您的计算机从另一计算机或移动设备上 xff0c 无论你在 世界 的 任何地方 常见的 使用情形 xff0c 包括给同事和朋友 提供 桌面支持 远程管理您的服务器 将 VNC Server 部署到 您想要控制
  • Centos(Linux)系统备份与还原

    Centos系统备份与恢复教程 tar xff1a 特点 1 保留权限 2 适合备份整个目录 3 可以选择不同的压缩方式 4 如果选择不压缩还能实现增量备份 xff0c 部份还原 xff0c 参考man tar dd 特点 1 对块进行操作
  • 03--C#入门基础

    今天我们就开始正式进入C 的入门学习 xff0c 从最简单的基础开始切入 xff0c 总结内容都非常的细节 xff0c 但也没有全部概况进去 xff0c 大家可以根据自己情况选择查看 xff0c 如有错处 xff0c 欢迎指正 目录 VS中
  • 04--C#运算符

    这一篇详细的介绍了C 中的几种运算符 xff0c 算术运算符 赋值运算符 复合赋值运算符 关系运算符 逻辑运算符 一元运算符 二元运算符 赋值运算符 61 xff1a 表示赋值 xff0c 表示把等号右边的值 xff0c 赋值给等号左边的变
  • Excel对图片的组合以及选择

    今天介绍的是利用Excel对图片进行的一些简单处理的方法 xff0c 比如对图片的编辑以及组合 xff0c 以及对图片的选择 xff1a 对图片进行一些圈红标注 xff1a 插入 gt 形状 gt 选择一个矩形框 xff0c 圈主自己要注释
  • 02--C#Winform--控件大小随窗口大小改变等比例变化

    最近在做Winform相关的项目 xff0c 这就会涉及到如何将窗口里的控件大小随窗口的调整而改变大小 xff0c 一开始想要直接调整窗口以及控件的属性来达到效果 xff0c 比如 xff0c Anchor和Dock属性 xff0c 但是没
  • 05--C#流程控制

    前面讲到的都是顺序结构 xff0c 顺序结构的意思就是程序从main函数进入 xff0c 从上到下一行一行的执行 xff0c 不会落下任何一行 xff0c 这章的内容就会讲到流程控制相关的几个结构 xff1a 分支结构 选择结构 循环结构