您的位置:首页 > 编程语言 > C#

C#编程入门基础 控制语句概要

2013-04-22 11:05 369 查看
开发者要充分应用任何一种语言,必须全面而彻底地了解其代码流程结构。在本文中,我将概括说明C#控制语句,并讨论应用每种语句的适当方法。

选择语句

If和switch被称之为选择语句,是因为它们能够根据实际情形决定逻辑路径代码。下面介绍这两个语句。

if语句

这个语句中包含一个求布尔值的表达式。如果布尔表达式的值为真,即执行if子句中的语句;如果布尔值为假,则不执行if子句中的语句。

if语句后面可以紧跟一个else语句,如果if子句中的布尔表达式的值为假,则执行else语句。else语句还可以与if语句组合使用。那时,它的执行方式与普通的if语句相似。但是,只有当第一个if子句的布尔表达式值为假,且这个else if子句值为真时,才执行这段代码。

一般来讲,为了保证代码的各种情形得到处理,且不会出现程序逻辑漏洞,最好使用else语句。

注:当应用if语句检查等同性时,必须使用两个连续的等号。两个等号检查等同性,而一个等号仅表示赋值。

下面是if语句的一个应用实例:

int i=3;

if (i == 1)

{MessageBox.Show("i=1"); }

elseif (i==2)

{MessageBox.Show("i=2"); }

else

{ MessageBox.Show("i=?"); }

switch语句

这个语句求一个表达式的值,并将这个值与许多case进行比较。每个case与一个叫做switch块的语句列表关联。C#执行一个与switch块关联的语句块,这个switch块与表达式的值进行匹配。当你试图求某个特殊表达式的值时,switch是一种易于理解的编程方法,其中包含许多if/else语句对。

用做switch语句驱动器的表达式包含在括号内,后面是switch关键字。一般来说,switch语句表达式的值必须为下列类型中的一种:sbyte、byte、short、ushort、int、uint、long、ulong、char、string。你也可能使用一个能够隐性转换成上述值类型的表达式。

switch块以关键字case开始,后面是一个常量表达式。常量表达式后面是一个冒号,冒号后是语句列表。break则结束语句块。

C#首先求switch语句中的表达式的值。然后它寻找一个switch块,将这个块的表达式与前面表达式的值进行匹配。如果它能够在这些switch块中找到一个匹配的值,即执行switch块的语句列表。

如果没有case与switch块的常量值相匹配,switch块中的默认关键字就执行一段特殊的代码。

通常,为了保证代码的各种情形得到处理,且不会出现程序逻辑漏洞,最好使用默认关键字。

下面是switch语句的一个应用实例:

int i=3;

switch (i)

{

case 1:

MessageBox.Show("i=1");

break;

case 2:

MessageBox.Show("i=2");

break;

default:

MessageBox.Show("i=?");

break;

}

循环语句

因为while、do、for和foreach能够重复多次执行嵌套语句,所以把它们归为循环语句。以下是这四个语句的介绍。

while语句

当一个表达式的值为真时,这个语句执行一个语句列表。控制while语句的布尔表达式包含在括号内,前面是while关键字。括号后面是当布尔表达式值为真时应执行的语句。

下面是while语句的一个应用实例:

int i=3;

while (i < 5 )

{

MessageBox.Show(i.ToString());

i++;

}

do语句

这个语句执行其嵌套语句零次或多次。如果while语句中的布尔表达式值为假,则不执行任何嵌套语句。但是,为了保证嵌套语句至少执行一次,可以使用一个do语句。

do语句后面是一个嵌套语句,后面紧跟着一个while关键字。控制循环执行次数的布尔表达式位于while关键字的后面。由于布尔表达式在嵌套语句执行后再求值,因此嵌套语句至少被执行一次。

以下为do语句的一个应用实例:

int i=3;

do

{

MessageBox.Show(i.ToString());

i++;

}

while (i < 3);

for语句

这个语句以for关键字开始,接着是括号。括号内是一个初始化器,一个条件下和一个迭代语句,它们全都以分号隔开。嵌套语句在括号后面。

以下是for语句的一个应用实例:

for (int i=0; i<4; i++)

{

MessageBox.Show(i.ToString());

}

}

foreach语句

这个语句用来循环一个集合中的元素。由于C#中的数组支持foreach语句,因此你可以应用foreach语句处理数组中的每一个元素。

使用foreach语句时,首先输入foreach关键字,然后是括号。括号内必须包含以下信息:集合中元素的类型、集合中元素的标识符名称、关键字in和集合的标识符。嵌套语句在括号之后。

下面是foreach语句的一个应用实例:

int[] intArray;

intArray = newint[3];

intArray[0] = 0;

intArray[1] = 1;

intArray[2] = 2;

foreach (int ArrayElement in intArray)

MessageBox.Show(ArrayElement.ToString());

跳跃语句

由于break、continue和goto语句有助于跳跃到代码中的某个特定语句,因此它们属于跳跃语句。下面是这三个语句的介绍。

break语句

这个语句常与switch语句联合使用;但是,C#允许你使用它跳出当前语句块。我们经常用break语句跳出一个循环语句块。

下面是break语句的一个应用实例:

int i = 0;

while (i < 4)

{

MessageBox.Show(i.ToString());

if (i == 2)

break;

i++;

}

continue语句

这个语句将控制返回到控制循环语句的布尔表达式。

下面是continue语句的一个应用实例:

for (inti = 1; i <= 4; i++)

{

if (i < 2)

{

continue;

}

MessageBox.Show (i);

}

goto语句

这个语句把控制无条件交给一个标记语句。在C#中,任何语句都可以被标记。语句标记后紧跟一个冒号,一个标记标识符,然后是goto关键字。goto语句把控制交给由标记标识符命名的语句。

如果过度使用goto语句,编写出来的代码可能难以阅读与理解。通常,最好对代码进行改写,避免使用goto语句。

下面是goto语句的一个应用实例:

int i = 0;

while (i < 3)

{

MessageBox.Show(i.ToString());

if (i == 2)

goto Complete;

i++;

}

Complete: MessageBox.Show("complete");

补充信息

本文介绍了C#中代码/流程语句的基本信息。欲了解应用每个语句的详细信息,请访问微软网站获知选择、循环和跳跃语句的详细内容。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: