【C#——溫習中體會你的三大結構】

我是太陽啦啦啦發表於2016-01-24

前言:

    在學習C#的過程中,慢慢接觸到了三大結構:順序結構、選擇結構、迴圈結構,在看視訊的過程中,並自己動手去實現例子,總覺的似曾相識,好像已經學習過了,是的!知識的學習是個i+1的過程,以前的在學習VB 的時候,這三大結構給了我很深刻的印象,今天,我們來通過這篇文章來深刻的瞭解C#中的這三大迴圈結構。

主體:

 回顧VB:


C#重溫:


 (一)順序結構:

按照程式語句的編寫順序依次執行。

  

     (二)選擇結構

               If:有可能一條語句都不執行
例子:
<strong><span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;">public static void CheckPos()
        {
            if (PlayerPos[0]>99)
            {
                PlayerPos[0] = 99;
            }
            if (PlayerPos[1]>99)
            {
                PlayerPos[1] = 99;
            }

            if (PlayerPos[0]<0)
            {
                PlayerPos[0] = 0;
            }
            if (PlayerPos[1]<0)
            {
                PlayerPos[1] = 0;
            }
        }</span></span></span></strong>



        if-else:有條件的執行一條語句,至少執行一條語句
例子:
<strong><span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;">         if (number == 1)
                        {
                            int temp = 0;
                            temp = PlayerPos[playerPos];
                            PlayerPos[playerPos] = PlayerPos[1 - playerPos];
                            PlayerPos[1 - playerPos] = temp;
                            msg=string.Format("玩家{0}選擇了與玩家{1}交換位置", PlayerNames[playerPos], PlayerNames[1 - playerPos]);
                        }
                        else
                        {
                            PlayerPos[1 - playerPos] = 0;
                            msg=string.Format("玩家{0}選擇轟炸玩家{1}", PlayerNames[playerPos], PlayerNames[1 - playerPos]);

                        }</span></span></span></strong>





        if-else if:如圖

例子:
<strong><span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;"> if (PlayerPos[0] == PlayerPos[1] && PlayerPos[0] == pos)
            {
                Console.ForegroundColor = ConsoleColor.Yellow;
                temp = "<>";
            }
            else if (PlayerPos[0] == pos)//如果玩家A在地圖上就畫A
            {
                Console.ForegroundColor = ConsoleColor.Yellow;
                temp = "A";
            }
            else if (PlayerPos[1] == pos)//如果玩家B在地圖上就畫B
            {
                Console.ForegroundColor = ConsoleColor.Yellow;
                temp = "B";
            }</span></span></span></strong>


        switch-case:
<strong><span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;"> switch (Map[pos])//如果玩家A和玩家B不在一起也不在這個座標上就畫該顯示的地圖圖示
                {
                    case 0: Console.ForegroundColor = ConsoleColor.Gray;
                        temp = "□";
                        break;
                    case 1:
                        Console.ForegroundColor = ConsoleColor.Red;
                        temp = "◎";
                        break;
                    case 2:
                        Console.ForegroundColor = ConsoleColor.Blue;
                        temp = "☆";
                        break;
                    case 3:
                        Console.ForegroundColor = ConsoleColor.Green;
                        temp = "▲";
                        break;
                    case 4:
                        Console.ForegroundColor = ConsoleColor.Magenta;
                        temp = "卐";
                        break;
                }//end switch</span></span></span></strong>


  (三)迴圈結構

       1.While:

例子:

      

<span style="font-size:18px;"><span style="font-size:18px;">while (PlayerNames[0]=="")
            {
                Console.WriteLine("玩家A的姓名不能為空,請重新輸入");
                PlayerNames[0] = Console.ReadLine();
            }
            Console.WriteLine("請輸入玩家B的姓名");
            PlayerNames[1] = Console.ReadLine();</span></span>

       2.do-while:

例子:
<strong><span style="font-size:18px;"><span style="font-size:18px;">            string name = "";
            string pwd = "";
            do
            {
                Console.WriteLine("請輸入帳號");

                name = Console.ReadLine();

                Console.WriteLine("請輸入密碼");

                pwd = Console.ReadLine();
            } while (name != "admin" || pwd != "88888");
            Console.WriteLine("程式結束");

            Console.ReadKey();
</span></span></strong>

區別:



       3.for :知道迴圈次數,用for

例子:
<strong><span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;"> for (int i = 65; i <= 69; i++)
            {

                Console.WriteLine(DrawStringMap(i));
            }</span></span></span></strong>


           迴圈中的跳轉:
                           break
                          continue

總結:

學習是一個不斷重複的過程,每學習一個新的知識,並不都是新的,我們儘可能用已有的知識學習它,在i+1的力量之上。

                



相關文章