C#系列六《循環語句》


    學習過前面的知識以后,我們已經可以寫出一些簡單的程序,例如:編寫一個程序在屏幕中打印出1+2的和,太簡單了?沒關系一步一步來嘛,就像電影《讓子彈飛》里面有一句話,飯要一口一口吃,路要一步一步走,步子邁大了,咔。。。。。。容易。。。。 哈哈! 好吧,不瞎扯了,還是看上面那個簡單的程序吧。

    1. 一個簡單程序的實現

     首先看下代碼:  

 
 
 
         
  1. int i =  1
    Console.WriteLine( " i+2={0} ", (i +  2)); 

      確實很簡單,慢慢的提高難度,在加入之前講過的分支結構,現在需求是,用戶輸入一個整數數字,根據輸入的整數數字來顯示該數字是奇數還是偶數。代碼如下:

 1 Console.Write( " 請輸入一個整數: ");       
 2  int i = Convert.ToInt32(Console.ReadLine());        
 3  if (i %  2 ==  0)       
 4 {           
 5    Console.WriteLine( " 整數{0}為偶數! ",i);       
 6 }       
 7  else      
 8 {           
 9    Console.WriteLine( " 整數{0}為奇數! ",i);       
10 } 

    好的,看下輸出的結果:

    確實很簡單吧,那么接下來我們在來看一個需求,現在要求計算出 1 + 2 + 3 + 4 + 5的和!我們很快就成想到使用如下代碼:

int sum =  1 +  2 +  3 +  4 +  5;  
Console.WriteLine( " (1 + 2 + 3 + 4 + 5)={0} ",sum); 

  

    那么如果是 1 + 2 + 3 + 4 + 5 + 。。。。。。1000呢?  

   2.提出問題引入循環

      在解決上面的問題之前,我需要引述C#中for循環語句,首先我們來介紹一下for語句的基本格式與語法。

 
 
 
         
  1. for (①;② ;④ )  
  2. {  
  3.    ③  

      ①:循環控制變量初始化,只在第一次循環開始時執行

      ②:循環控制變量表達式判斷

      ③:循環執行代碼區域

      ④:循環控制變量增量

      執行順序就是我所編號的順序。好那么來看一個例子,屏幕中打印1 2 3 ,代碼如下:

for ( int i =  1; i <=  3; i++)  
{       
   Console.Write( " {0}  ", i);  

Console.WriteLine(); 

   分析一下吧:

      循環第一次:首先是int i=1,接下來判斷 i<=3,因為1<=3成立所以執行,Console.Write,接着i++.

      循環第二次:此時經過上一輪執行i的值為2,判斷2<=3從成立,繼續執行Console.Write,接着i++

      循環第三次:i的值為3,判斷3<=3成立,繼續執行Console.Write,繼續i++

      結束: 此時i的值經過第三次i++后,值變為4,執行條件判斷區域4<=3不成立,結束循環!

      執行結果如下:    

    解決上邊遺留問題,計算:1 + 2 + 3 + 4 + 5 + 。。。。。。1000的和,介紹完循環語句我想這個時候大家就會感覺這個問題一下子就變得簡單了。簡單了也要貼出代碼:

  int sum =  0
  for ( int i =  1; i <=  1000; i++)  
 {  
    sum += i;  
 }  
 Console.WriteLine(sum); 

   好的,問題暫時告一段落,我們來看下C#還有哪幾種循環的方式.

 3.C#中的幾種循環

     1. while 循環

      基本格式與語法:

 
 
 
         
  1. while(①)  
  2. {  
  3.    ②  

    ① 布爾值,也可是計算布爾的表達式

    ② 程序執行的代碼

    執行順序為我序號的順序,同樣用屏幕顯示 1 2 3的例子來詮釋while循環語句:

int i =  1;  
while (i <=  3)  
{     
     Console.Write( " {0}  ",i);    
     i++;  
}  
Console.WriteLine(); 

    2. do .. while 循環

       基本格式與語法:

 
 
 
         
  1. do 
  2. {  
  3.      ①  
  4. while (②); 

         ① 代碼執行區域,與while不同的是,do ..while會先執行代碼區域在執行條件區域

         ② 循環條件執行區域,布爾值,也可是計算布爾的表達式  

       執行順序為我序號的順序,繼續用屏幕打印1 2 3的例子來詮釋,代碼如下:

int i =  1;  
do 
{      
    Console.Write( " {0}  ", i);
    i++;  
while (i<= 3); 
Console.WriteLine(); 

3. foreach  

          foreach我將會在后面文章介紹。

 4.使用do..while構建交互性強的應用

     介紹完C#循環控制語句后,我們來看一下如何用do..while語句構建交互性較好的程序,以上邊的判斷奇數偶數的問題為例,我們需要用戶屬於一個數字判斷是奇數還是偶數,判斷完成之后我們需要用戶輸入繼續嗎?如果用戶輸入Y,表示繼續,否則表示停止程序。我們來看代碼如下:

string yon =  " y ";            
  do            
{                
    Console.Write( " 請輸入一個整數: ");                
     int i = Convert.ToInt32(Console.ReadLine());                  
     if (i %  2 ==  0)                         
    {                       
       Console.WriteLine( " 整數{0}為偶數! ", i);                 
     }                 
      else                
     {                     
       Console.WriteLine( " 整數{0}為奇數! ", i);                 
     }                 
     Console.Write( " 繼續嗎?(輸入Yes為繼續,其他為停止): ");                 
     yon = Console.ReadLine();             
while ( " yes " == yon.ToLower());            
 Console.WriteLine(); 

     分析一下上邊代碼:

     首先執行do中的代碼段,輸入數字判斷奇偶,緊接着輸入是否繼續,根據輸入的字符判斷是否進行下一輪循環。執行結果如下:

循環語句就暫時介紹到這里啦!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM