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. [原创汉化] 价值990美元的顶级专业数据恢复软件O&O DiskRecovery 11(技术员版)汉化绿色版

    百度没搜索到11有汉化版的,有空就把它汉化了,大部分借鉴的是以前汉化版的词条.另外,顺便做了个二合一的单文件版给有需要的朋友. 运行环境: 可用于 Windows 2000/XP/2003/Vista ...

  2. Django入门与实践-第14章:用户注册(完结)

    http://127.0.0.1:8000/signup/ django-admin startapp accounts INSTALLED_APPS = [ 'accounts', ] # mypr ...

  3. java中File的delete和deleteOnExit区别(转)

    Java的File类中有两个delete方法:delete和deleteOnExit delete无需解释,为直接删除,deleteOnExit文档解释为:在虚拟机终止时,请求删除此抽象路径名表示的文 ...

  4. SGU 169 Numbers (找规律)

    题意:中文题,直接忽略... 析:先说说我的思路,我一看这个题第一感觉就是要找规律,要是挨着算,猴年马月都跑不完,更何况时间限制是0.25s,怎么找规律呢,我算了一下前10位,分别是8,1,1,3,1 ...

  5. python3中 for line1 in f1.readlines():,for line1 in f1:,循环读取一个文件夹

    循环读取一个文件: fr.seek(0) fr.seek(0, 0) 概述 seek() 方法用于移动文件读取指针到指定位置. 语法 seek() 方法语法如下: fileObject.seek(of ...

  6. <a href=“#”>

    在html中看到这样的属性:<a href=“#”>搜了好久,感觉不甚明白,现记之,等遇到了再做补充. # is called an anchor (or hash...). so the ...

  7. virtualenv 安装及使用[转]

    一如既往,官方文档: https://virtualenv.pypa.io/en/latest/   下载地址:https://pypi.python.org/pypi/virtualenv#down ...

  8. HDU6029 Graph Theory 2017-05-07 19:04 40人阅读 评论(0) 收藏

    Graph Theory                                                                 Time Limit: 2000/1000 M ...

  9. node 问题

    安装:使用.msi直接安装就好,环境变量已经设置好了 1.问题:验证node是否正确安装 办法:直接计算1+1:创建服务器. 在项目文件夹的路径下,输入node命令,会看到一个提示符,这里只能输入直接 ...

  10. Oracle 在not in中使用null的问题

    http://www.linuxidc.com/Linux/2012-07/66212.htm 以前还专门小总结过一下Oracle中关于NULL的一些问题,碰巧今天在看书的过程中又看到了另外一个以前没 ...