您所在的位置: 首页>>读书频道>>设计开发>>.Net系列>>

3.2 流控制概述

http://book.51cto.com  2008-07-19 11:14  (美)米凯利斯(Michaelis, M.)著/周靖译  人民邮电出版社  我要评论(0)
  • 摘要:《C#本质论》第3章运算符和控制流,这一章将讲述运算符和控制流语句。利用运算符所提供的特定语法,可以针对计算中涉及的操作数执行各种不同的计算或操作,本小节为大家介绍流控制概述。
  • 标签:C#  本质论  运算符  控制流  C#本质论

3.2 流控制概述

在本章后面的代码清单3-42中,我们展示了如何以一种简单的方式来查看一个数的二进制形式。然而,即便如此简单的一个程序,不用控制流语句也是写不出来的。控制流语句控制着程序的执行路径。本节将讨论如何基于条件检查来改变语句的执行顺序。稍后,你将学习如何通过循环结构来反复执行一组语句。

表3-1总结了所有控制流语句。注意,“常规语法结构”这一列给出的只是常见的语句用法,而不是完整的词法结构(lexical structure)。

表3-1中的embedded-statement泛指任何语句,其中包括代码块(但不包括声明语句或者标签)。

表3-1中的每个C#控制流语句都出现在了附录B的tic-tac-toe程序中。这个程序会显示一个tic-tac-toe棋盘,提示每个玩家,并在每一次走棋之后更新。

表3-1 控制流语句

语句

常规语法结构

示例

 

if语句

if (boolean-expression)

embedded-statement

if (input == "quit")

{

  Console.WriteLine("Game end");

  return;

}

if (boolean-expression)

  embedded-statement

else

  embedded-statement

if (input == "quit")

{

  Console.WriteLine("Game end");

  return;

}

else

  GetNextMove();

 

while语句

while (boolean-expression)

  embedded-statement

while(count < total)

{

  Console.WriteLine("count = {0}", count);

  count++;

}

 

do while语句

do

  embedded-statement

while (boolean-expression) ;

do

{

  Console.WriteLine("Enter name:");

  input = Console.ReadLine();

}

while(input != "exit");

 

for语句

for (for-initializer;

    boolean-expression;

    for-iterator)

    embedded-statement

for (int count = 1; count <= 10; count++)

{

  Console.WriteLine("count = {0}", count);

}

 

foreach语句

foreach (type identifier in

      expression)

  embedded-statement

foreach (char letter in email)

{

  if(!insideDomain)

  {

    if (letter == '@')

    {

      insideDomain = true;

    }

    continue;

  }

  Console.Write(letter);

}

continue语句

continue;

 

switch语句

switch(governing-type-

expression)

{

  ...

  case const-expression:

    statement-list

    jump-statement

  default:

    statement-list

    jump-statement

}

switch(input)

{

  case "exit":

  case "quit":

     Console.WriteLine("Exiting app....");

     break;

  case "restart":

     Reset();

     goto case "start";

  case "start":

 

(续)

语句

常规语法结构

示例

 

 

      GetMove();

      break;

 default:

     Console.WriteLine(input);

     break;

}

break语句

break;

 

goto语句

goto identifier;

 

goto case const-expression;

 

goto default;

 

在本章剩余的部分,我们将更详细地讨论每一条语句。讨论了if语句之后,在接触其他控制流语句之前,我们首先解释代码块、作用域、布尔表达式以及按位运算符的概念。由于C#与其他语言具有很多相似性,部分读者可能发现这个表格非常熟悉。这部分读者可以直接跳到3.9节,或者直接跳到本章的小结部分。

【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
上一篇: 3.1.6 常量表达式 下一篇: 3.2.1 if语句
C#实用基础教程
C#技术开发指南
深入Vista应用程序开发
Ruby on Rails 社区网站开发
ASP.NET从入门到精通
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有