文档详情

C#程序设计05__程序流程控制.ppt

发布:2017-09-18约3.36千字共10页下载文档
文本预览下载声明
第5章 程序流程控制 5.1 操作运算语句 5.2 选择语句 5.3 循环语句 5.4 转移语句 5.5 预处理指令 5.1.1 终点与可达性 直观地说,语法上语句书写完成的地方就是该语句的终点。 如果一条语句可以被执行,则称它是可达的(reachable);相反,如果一条语句无法被执行,我们称它是不可达的(unreachable)。 5.1.2 函数调用语句 函数调用语句由函数调用加一个分号“;”构成一条语句。 例如: Console.WriteLine(“Hello World!”); 5.1.3 语句块 语句块也被称为复合语句,它是用一对花括号“{ }”括起的语句序列。 假如此语句序列被省略,则称块为空。 块可以嵌套。 5.1.4 空语句 空语句不进行任何操作。 一条空语句的执行只是简单地把控制跳到语句的结束点。 空语句可以被用在while语句中,此时它含有一个空地执行体 . 5.1.5 标号语句 一个标号语句允许一条语句前加上一个标号。 标号语句可以被用在语句块中,但不允许出现在嵌套语句中。 一个标号可以在它的作用域内通过goto语句来引用. 执行一条标号语句时,就是执行标号后面的语句。 5.1.6 声明语句 声明语句可以声明一个局部变量或常量。 声明语句可以在语句块中出现,但是不允许在嵌套语句中出现。 1.局部变量声明 2.局部常量声明 5.1.7 表达式语句 表达式语句由一个表达式后接一个分号“;”组成。 在C#语言中,只有以下四类表达式可以成为表达式语句: (1)new对象创建表达式; (2)调用表达式; (3)赋值表达式; (4)自增、自减表达式。 5.2.1 if语句 if语句是条件选择语句,其常用的表达形式有: if(布尔表达式) { 语句组; } 或 if(布尔表达式) { 语句组1; } else { 语句组2; } 还可以使用else-if方法处理多个条件: if(布尔表达式1) {语句组1;} else if(布尔表达式2) {语句组2;} …… else if(布尔表达式n) {语句组n;} else {语句组n+1;} 5.2.2 switch语句 switch(表达式) { case 常量表达式1: {语句组1} break; case 常量表达式2: {语句组2} break; …… case 常量表达式n: {语句组n} break; default: {语句组n+1} break; } 在C#中程序员必须显式地告诉编译器停止switch语句的执行,这就要在switch语句中每个执行单元后添加break语句。当程序遇到break语句时,switch语句终止执行,程序的控制转移到switch语句后紧接的一条语句。 如果想让C#像C++那样,执行完某个case语句后能继续遍历其它的语句,则只需要明确地加入下面这两条跳转语句即可: goto case label:跳至标签语句执行; goto default:跳至default 标签执行。 switch语句后面括号中的表达式类型可以是string类型。 5.3.1 while语句 while(布尔表达式) { 循环体 } 使用break语句结束while循环,执行后续语句; 使用continue语句停止循环体的执行,继续进行while 循环。 5.3.2 do-while语句 do { 循环体 } while(布尔表达式); 同样允许用break语句和continue语句 5.3.3 for语句 for(表达式1;布尔表达式2;表达式3) { 循环体 } 5.3.4 foreach语句 foreach(变量类型 循环变量 in 集合表达式) { 循环体 } 1.对数组使用foreach语句 foreach语句可用来为数组中的每一个元素执行一遍循环体中的语句。 因为不需要数组中的元素直接参与运算,也不需要事先知道数组元素的个数,所以对全体数组进行操作时用foreach语句效率很高。 2.对集合使用foreach语句 若要循环访问集合,在foreach语句中集合必须满足下列条件: 集合类型必须是interface、class或struct类型,还必须包括返回类型的GetEnumerator的实例方法。 循环变量类型包含一个Cur
显示全部
相似文档