1、C#之流程控制语句:计算机程序执行的控制流程由三种基本的控制结构控制,即顺序结构,选择结构,循环结构

1) 顺序结构:从上到下,按照书写顺序执行每一条语句,不会发生跳跃。

代码段1; // 先执行代码段1
代码段2; // 接着执行代码段2
...

2)选择结构:对给定的条件进行判断,再根据判断结果来决定执行哪一段代码。

if 结构

if( 条件 )
{
条件成立执行语句;
}

if-else结构

if(条件) {
条件成立执行;
}
else
{
条件不成立执行;
}

if else-if

if(条件1)
{
条件1成立执行代码段;
}
else if (条件2)
{
条件2成立执行代码段;
}
else
{
条件都不成立执行代码段;
}

switch-case

switch( 要判断的变量或者表达式 )
{
case 值1 :
执行语句1;
break; // switch的穿透性--不加break
case 值2 :
执行语句2;
break;
default:
默认执行语句;
break;
}

当要判断的变量或者表达式与其中一个case语句中的值相符时,就执行此case语句后面的语句,除非遇到break;语句跳出switch语句为止。如果要判断的变量或者表达式与所有case语句的值都不相符,就执行default语句中的语句并跳出switch语句。

4)循环结构:在给定条件成立的情况下,反复执行某一段代码。

while

while( 循环条件 )
{
循环体;
}

while 中的循环条件成立时就会执行大括号里面的程序;

continue 结束当前的循环,进入到下一个循环;

break 终止整个循环,不再执行大括号里面的程序,进入下一步程序;

do-while:

do{
循环体;
}
while ( 循环条件 );

do-while 首先执行do中的循环体,执行完成后,去判断循环条件是否成立,如果成立,则继续回到do中执行循环体,如果不成立,则跳出do-while循环。

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

for:

for(int i = 0; i< 10; i++)
{
要循环执行的内容 ;
}

int i = 0; 是初始条件  i < 10是循环条件  i++ 是技数状态改变

跟while循环一样,在循环体内使用 continue; 结束当前的循环,进入到下一个循环;

循环体内使用 break 终止整个循环,不再循环体中的程序;for一般在有明确循环次数的程序上使用。

循环嵌套:

for( int i =0; i < 10;i++)
{
for(int j =0; j < 10;j++)
{
  ...
}
}

foreach:C# 也支持 foreach 循环,使用foreach可以迭代数组或者一个集合对象。

foreach( var item in list)
{
...
}

 foreach在处理集合和数组相对于for存在以下几个优势:

  • foreach语句简洁;
  • 效率比for要高(C#是强类型检查,for循环对于数组访问的时候,要对索引的有效值进行检查);
  • 不用关心数组的起始索引是几(因为有很多开发者是从其他语言转到C#的,有些语言的起始索引可能是1或者是0);
  • 处理多维数组(不包括锯齿数组)更加的方便。

2、try-catch异常捕获

try{
可能会出现异常的代码;
} catch (Exception ex) // ex-可能出现异常的异常信息
{
// 出现异常后要执行的代码;
} finally{
无论是否出现异常都会执行的代码;
}

执行过程:当try中的代码出现异常的时候,出现异常的这行代码后面的代码不会被执行。 跳到catch中执行catch的代码。

C# 程序运行中的流程控制的更多相关文章

  1. python中的流程控制

    目录 引言 流程控制的分类 分支结构 单if结构 if与else结构 if与elif与else结构 if分支的嵌套 循环结构 while循环 while + break循环 while + conti ...

  2. Java中的流程控制(三)

    关于Java中的流程控制 关于Java中的流程控制 4.do while语句 do while语句的功能和while语句差不多,只不过它是在执行完第一次循环后才检测条件表达式的值,这意味着包含在大括号 ...

  3. Python基础之:Python中的流程控制

    目录 简介 while语句 if 语句 for语句 Break Continue pass 简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样 ...

  4. zigbee学习:示例程序SampleApp中通讯流程

    zigbee学习:示例程序SampleApp中通讯流程 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 参考链接: http://wjf88223.bl ...

  5. 程序运行中(BSS段、数据段、代码段、堆栈)

    程序运行中(BSS段.数据段.代码段.堆栈) BSS段:(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BSS是英文Block Started by Symbol的简 ...

  6. 内存模型 Memory model 内存分布及程序运行中(BSS段、数据段、代码段、堆栈

    C语言中内存分布及程序运行中(BSS段.数据段.代码段.堆栈) - 秦宝艳的个人页面 - 开源中国 https://my.oschina.net/pollybl1255/blog/140323 Mem ...

  7. C中的流程控制

    一. 流程控制 l 顺序结构:默认的流程结构.按照书写顺序执行每一条语句. l 选择结构:对给定的条件进行判断,再根据判断结果来决定执行哪一段代码. l 循环结构:在给定条件成立的情况下,反复执行某一 ...

  8. Java中的流程控制(二)

    关于Java程序的流程控制(二) 关于Java程序的流程控制(二) 3.switch选择语句 switch语句用于将一个表达式的值同许多其他值比较,并按比较结果选择下面该执行哪些语句. switch( ...

  9. Java中的流程控制(一)

    程序的流程控制(一) 关于Java程序的流程控制(一) 从结构化程序设计角度出发,程序有三种结构: 顺序结构 选择结构 循环结构 1.顺序结构 就是程序从上到下一行行执行,中间没有判断和跳转. 2.i ...

随机推荐

  1. part1:1-embeded学习心态

    遇到问题,要冷静分析问题,采用排除法,个个排除查找问题之所在!切记!在没分析完自己问题之前,别把问题所在指向他人!

  2. CSS 关键的基础知识

    今晚看了 百度传课 一门关于CSS的课程, 感觉不错, 随手记了点儿笔记, 供以后查阅. =================================================== pos ...

  3. 使用java做paypal开发时购买东西支付不成功的原因

    使用java做paypal开发时购买东西支付不成功的原因 没有设置网站习惯设定,登陆自己的paypal账户,在网站习惯设定上填写回调的url路径,这样就可以 支付成功了并且异步修改订单的状态. 支付成 ...

  4. 2018.10.19 NOIP训练 yk赚钱记(01分数规划)

    传送门 其实是一个裸的最优比率生成树. 注意精度的控制就行了. 代码

  5. java中线程和并发面试题

    http://www.cnblogs.com/dolphin0520/p/3932934.html http://www.cnblogs.com/dolphin0520/p/3958019.html ...

  6. swagger 入门

    官网:http://swagger.io/ Swagger UI 下载地址: https://github.com/swagger-api/swagger-ui 文档:README.md ### Do ...

  7. MySQL性能调优与架构设计——第13章 可扩展性设计之 MySQL Replication

    第13章 可扩展性设计之 MySQL Replication 前言: MySQL Replication 是 MySQL 非常有特色的一个功能,他能够将一个 MySQL Server 的 Instan ...

  8. 《Android开发艺术探索》第11章 Android的线程和线程池

    第11章 Android的线程和线程池 11.1 主线程和子线程 (1)在Java中默认情况下一个进程只有一个线程,也就是主线程,其他线程都是子线程,也叫工作线程.Android中的主线程主要处理和界 ...

  9. cheerio笔记

    不会的东西,再简单都是难:会的东西,再难都是简单. 给自己写的,写的通俗易懂. cheerio:在node服务端,解析网页,是jquery的核心,去除了DOM中不一致的地方. 先获得网页的源码,再通过 ...

  10. 个人项目:实现wc.exe(Java)

    本项目Github地址:https://github.com/NNewBoy/wc 项目相关要求 基本功能:(已实现) -c 统计文件字符数 -w 统计文件词的数目 -l 统计文件行数 扩展功能:(已 ...