快速撐握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!
相關文章
相關標籤/搜索