APP下载

C#中不同循环结构比较

2015-05-30梁宇琪王冰苗娟

都市家教·下半月 2015年5期
关键词:程序代码表达式语句

梁宇琪 王冰 苗娟

循环结构是程序设计中一种很重要的结构,其特点是:在给定条件成立的情况下,反复执行某段程序,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体。C#语言提供了多种循环语句,包括for语句、while语句、do-while语句、foreach语句、break语句、continue语句等;此文仅对for语句、while语句、do-while语句、foreach语句进行比较,使学习者明确它们之间的区别,以便使用循环结构时进行选用。

一、for循环

for循环语句是c#中使用最广泛,最灵活的一种循环语句。它不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况。

首先我们来介绍一下for语句的基本格式与语法:

for(①初始化表达式;②循环条件表达式;④变量控制表达式)

{

③循环体

}

执行过程如下:①初始化表达式:一般为赋值表达式,为循环控制变量赋初值。只在第一次循环开始时执行;②循环条件表达式:一般为逻辑表达式,是用来控制循环是否继续的条件。当表达式的值为“真”时,循环继续执行转向步骤③;当表达式的值为“假”时,跳过循环体③,循环结束;③循环体:反复执行的代码段;④变量控制表达式:一般为赋值表达式,为循环控制变量增量或减量。执行完后,转向步骤②,循环继续执行。

使用for循环时需要注意几点:

①在循环结构中,一定要有使循环趋向结束的操作。以上程序代码中,语句i++;使i不断增1,当i>5时,循环结束。如果没有i++;这一语句,i的值始终不变,循环将无限进行,即为死循环。

②for后面括号内的3个表达式之间用两个“;”隔开,3个表达式的内容可以为空,但”;”不能省略。

③for后面括号后没有“;”,紧接“{}”,如在for后的“()”后紧接“;”,则表示循环体为空。

④当循环体只有一个子句时“{}”可以省略。

二、while循环

While语句的作用是判断一个条件表达式,以便决定是否应当进入和执行循环体,当满足该条件时进入循环,不满足该天剑时则不再执行循环。

基本格式与语法:

while(①条件表达式)

{

②循环体

}

执行过程如下:①条件表达式:一般为逻辑表达式,是用来控制循环是否继续的条件。当表达式的值为“真”时,循环继续执行转向②;当表达式的值为“假”时,跳过循环体②,while循环结束;②循环体:反复执行的代码段。执行完后,转向步骤①,循环继续执行。

使用while循环时需要注意几点:

①在循环体中,一定要有使循环趋向结束的语句。以上程序代码中,语句i++;使i不断增1,当i>5时,循环结束。如果没有i++;这一语句,i的值始终不变,循环将无限进行,即为死循环。

②如果循环体只包含一个语句,可以省略{}。

三、do..while循环

基本格式与语法:

do

{

①循环体

}while(②条件表达式);

执行过程如下:①循环体:反复执行的代码段。当流程到达do后,立即执行循环体,循环体至少执行一次。完后转向while后的条件表达式②;②条件表达式:一般为逻辑表达式,是用来控制循环是否继续的条件。当表达式的值为“真”时,循环继续执行转向①;当表达式的值为“假”时,循环结束。

使用do...while循环时需要注意几点:

①在循环体中,一定要有使循环趋向结束的语句。以上程序代码中,语句i++;使i不断增1,当i>5时,循环结束。如果没有i++;这一语句,i的值始终不变,循环将无限进行,即为死循环。

②和while语句的相同点是:都是在while后表示循环条件;循环体都在{}中。和while语句的区别是:语法结构上do..while结构do开始,“;”结束;do..while结构不管一开始循环条件是否满足都先执行了循环体,循环体至少执行一次。

四、foreach语句

foreach循环语句可以遍历集合中的元素。foreach语句的语法格式如下:

foreach(类型变量in表达式)

{

循环体

}

其中:

类型:变量的类型

变量:能被集合元素赋值的循环变量,是一个只读的局部变量。

表达式:对象集合或数组表达式。集合元素的类型必须可以显式转换为变量类型。

执行过程如下:①变量在表达式中遍历时,循环体反复执行。

五、综合对比

经过对四种循环结构的介绍我们发现:①foreach循环语句通过遍历集合中的元素进行循环,其他三种都是通过循环变量控制循环;②在这三种循环结构中只有for循环明确的给出了循环变量定义及循环变量控制语句,因此使用更为灵活,还有更好的可读性;③do...while和while语句的相同点是:都是在while后表示循环条件;循环体都在{}中。和while语句的区别是:语法结构上do..while结构do开始,“;”结束;do..while结构不管一开始循环条件是否满足都先执行了循环体,循环体至少执行一次。

至此,以上四种循环结构我们就可以根据需要灵活选用了,但有时我们希望在循环条件成立的情况下提前跳出循环,这就需要用到break语句了;continue作用为结束本次循环,即跳过循环体中尚未执行的语句,继续该循环的下一轮。

猜你喜欢

程序代码表达式语句
OLED屏显示分析与实现
重点:语句衔接
一个混合核Hilbert型积分不等式及其算子范数表达式
表达式转换及求值探析
浅析C语言运算符及表达式的教学误区
计算机网络信息安全未来发展趋势
如何搞定语句衔接题
议C语言中循环语句
作文语句实录
嵌入式系统中程序的优化策略