快速撑握C#知识点之流程控制

关于C#的流程控制,与其它语言基本相同,包括:
选择控制:if、else、switch、case
循环控制:while、do、for、foreach
跳转语句:break、continue
异常处理:try、catch、finally
咱们看到在循环控制中多了一个foreach,在下面的过程当中咱们详细的了解.

选择控制:
咱们作个简单的用户验证,以下:
        public static void  Main()
        
{
            Console.WriteLine(
"请输入您的姓名"
);
            
string username=
Console.ReadLine();
            
if (username != "")//格式:if(条件)

            {
                
//知足条件时运行的代码

                Console.WriteLine("伟大的{0}欢迎您进入矩阵!", username);
            }

            
else//不知足
            {
                
//不知足条件时运行的代码

                Console.WriteLine("您没有输入任何内容,请离开!");
            }

        }
咱们发现,只要输入一个用户,就能够登陆系统,那么咱们来作下限制,让指定的人登陆,因而:
        public static void  Main()
        
{
            Console.WriteLine(
"请输入您的姓名"
);
            
string username=
Console.ReadLine();
            
if (username == "jianle")//格式:if(条件)

            {
                
//知足条件时运行的代码

                Console.WriteLine("伟大的{0}欢迎您进入矩阵!", username);
            }

            
else if (username == "boss")
            
{
               
//第二个条件 

                Console.WriteLine("伟大的{0}欢迎您进入矩阵!", username);

            }

            
else
            
{
              
//不知足条件时运行的代码  

              Console.WriteLine("您没有输入任何内容,请离开!");
            }

        }
switch选择控制
有一天,咱们须要能让更多的人登陆矩阵,那么就能够这样实现:
        public static void  Main()
        
{
            Console.WriteLine(
"请输入您的姓名"
);
            
string username=
Console.ReadLine();

            
switch
 (username)
            

                
case "jianle"
:
                    Console.WriteLine(
"伟大的{0}主人欢迎您进入矩阵!"
, username);
                    
break
;
                
case "boss"
:
                    Console.WriteLine(
"伟大的{0}老大欢迎您进入矩阵!"
, username);
                    
break
;
                
case "cctv"
:
                    Console.WriteLine(
"伟大的{0}先生欢迎您进入矩阵!"
, username);
                    
break
;
                
case "gril"
:
                    Console.WriteLine(
"伟大的{0}女士欢迎您进入矩阵!"
, username);
                    
break
;
                
default
 :
                    Console.WriteLine(
"您输入有误,请离开."
);
                    
break
;
            }


        }
 循环控制:
又发现弊端了,某一天伟大boss的boss同志不当心少打了个s 发现他要退出系统重起系统才能够进入,因而有了下面解决方案:
        public static void  Main()
        
{
            
            
bool bz = true;//这是一个标志

            while (bz)//判断标志是否为true 若是是的话就继续 不然的话就退出循环.
            {
                Console.WriteLine(
"请输入您的姓名"
);
                
string username =
 Console.ReadLine();
                
switch
 (username)
                
{
                    
case "jianle"
:
                        bz 
= false
;
                        Console.WriteLine(
"伟大的{0}主人欢迎您进入矩阵!"
, username);
                        
break
;
                    
case "boss"
:
                        bz 
= false
;
                        Console.WriteLine(
"伟大的{0}老大欢迎您进入矩阵!"
, username);
                        
break
;
                    
case "cctv"
:
                        bz 
= false
;
                        Console.WriteLine(
"伟大的{0}先生欢迎您进入矩阵!"
, username);
                        
break
;
                    
case "gril"
:
                        bz 
= false
;
                        Console.WriteLine(
"伟大的{0}女士欢迎您进入矩阵!"
, username);
                        
break
;
                    
default
:
                        
                        Console.WriteLine(
"您输入有误,请从新输入."
);
                        
break
;
                }

            }

从上边例子咱们能够看到,while是死循环,语法参照例中. do while与while的区别为先执行循环再判断条件.经常使用的为while循环.

好了,咱们能够再也不去想这个关于登陆矩阵的问题啦,继续咱们循环的学习.
 for循环
在这里咱们的例子作的是个遍历一个string数组的代码.
         public   static   void  Main()
        
{
             Console.WriteLine(
"输入三个数用,分割如:120,11,3");
             
string stra = Console.ReadLine();
             
string[] strb = stra.Split(',');//字符串的Split方法,能够把字符串分割,返回一个数组.
            for (int i = 0; i < strb.Length; i++)//这是个for循环 strb.Length 为数组strb的元素叫数.
            {
                Console.WriteLine(
"您输入的第{0}个数为{1}",i,strb[i]);
            }

        }

foreach循环
     foreach(数据类型 变量名 in 数组或集合 )
     {
     }
     其中数据类型与数组或集合的类型一致,还能够是小于数组和集合的类型.

        
public static void  Main()
        
{
             Console.WriteLine(
"输入三个数用,分割如:120,11,3"
);
             
string stra =
 Console.ReadLine();
             
string[] strb = stra.Split(',');//字符串的Split方法,能够把字符串分割,返回一个数组.

            foreach(string a in strb)
            
{
                Console.WriteLine(a);
            }

        }

再对于数组或集合的遍历时,建议使用foreach.

break与continue
break 语句可用于退出循环
continue 语句可用于跳过当前循环并开始下一循环


异常处理try
try语句提供了一种机制来捕捉块执行过程当中发生的异常,如下是它的三种的形式:
try-catch
try-finally
try-catch-finally
 
        public static void  Main()
        
{


            
try

            
{
                Console.WriteLine(
"请输入一个整数:"
);
                
int inta = int
.Parse(Console.ReadLine());
                Console.WriteLine(
"输入正确"
);
            }

            
catch
            
{
                Console.WriteLine(
"输入不正确"
);
            }

            
finally
            
{
                Console.WriteLine(
"无论对不对都要输出我!"
);
            }



关于异常,其实还有不少东西,咱们这里只是简单提了一些基本的知识点,若是须要更详细的应用,请查阅MSDN!
相关文章
相关标签/搜索