一、流程控制语句

1.条件语句:对条件进行判断并根据判断的结果来决定执行的方向

1.1 if-else语句

不同于C语言if后的逻辑表达式的返回值必须为boolean值不能是非0即真(可用三目运算符实现),if语句可以不接else语句也可以跟多个if-else语句,if语句块中只有一条语句可以不用大括号else同样但最好带上,

1.2 switch语句

完全可以用if-else改写但他可以简化代码量,switch后表达式可以是整型或者String,case子句定义与表达式进行比较的常量表达式以:结束,C#中case语句块中必须有break或者goto除非没有语句块,可以有default子语句用于表示不匹配

2.迭代语句:重复执行一个语句块

2.1 for语句

其中有三部分组成赋初值、条件表达式、增量或者减量表达式可以省略其中任意一个或多个,不同于C语言第一个可以定义表达式并赋值,自要迭代变量名不重复for可以嵌套

2.2 foreach语句

专门用于迭代数组或另外集合的元素被迭代的集合应该实现IEnumerable接口

2.3 while语句

只要while后的逻辑表达式为真就不断执行代码块中代码(循环中必须有结束循环的语句)

2.4 do-while语句

与while的区别在于语句至少执行一次而while可能一次也不执行

3.跳转语句:用于把程序的执行重定向到代码中的另一条语句

3.1 break语句

用于跳出do-while、for、foreach、while或者switch语句

3.2 continue语句

用于结束一次迭代而直接进行下次迭代

3.3 goto语句

使程序跳到另一段代码后面跟一个标号名

3.4 return语句

用于退出一个方法(返回值为void的方法不强求用return返回但有返回值的方法必须用return语句返回并且每个返回路径都要有一个return语句)

二、示例代码

View Code
 1 using System;
 2 
 3 public class Example
 4 {
 5     public static void Main(string[] args)
 6     {
 7         SwitchIfText(101);
 8         Console.WriteLine(ForText(100));
 9         int[] arr = new int[50];
10         WhileText(arr);//数组是引用类型在方法中的变化会放映到数组本身
11         foreach (int i in arr)//遍历数组
12         {
13             if (i % 2 == 0)
14                 continue;//结束此次迭代直接进入下次迭代
15             Console.Write(i + ",");//打印奇数
16         }
17 
18         Console.ReadKey();
19     }
20     static void SwitchIfText(int temp)
21     {
22         if (temp < 0 || temp > 100)//逻辑表达式
23         {
24             Console.WriteLine("没有这样的成绩");
25             return;//退出函数体
26         }
27         switch (temp % 10)//必须为整型或者string类型
28         {
29             case 10:
30             //case标签后没有语句可不用break直接贯穿也可以有不允许贯穿
31             case 9:
32                 Console.WriteLine("优秀");
33                 break;//必须有break语句否则报错
34             case 8: 
35             case 7:
36                 goto case 6;//可以显式声明贯穿case实际上是一个标签可被goto使用
37             case 6:
38                 Console.WriteLine("良好");
39                 break;
40             default://即使是default也要有break说明此标签位置任意
41                 Console.WriteLine("不及格");
42                 break;    
43         }
44     }
45     static int ForText(int temp)
46     {
47         int result = 0;
48         for (int i = 0; i <= temp; i++)
49         {
50             result += i;
51         }
52         return result;//方法有返回值必须有return语句
53     }
54     static void WhileText(int[] temp)
55     {
56         int i = 0;
57         while (i < temp.Length)//逻辑表达式
58         {
59             temp[i] = i;
60             i++;//用于结束while循环
61         }
62     }
63 }

 

posted on 2013-02-23 01:16  redher  阅读(230)  评论(0)    收藏  举报