C# for循環的嵌套 做用域

for()spa

{   循環體能夠套無數個for循環code

}blog

好比:for()作用域

{it

     for()for循環

    {class

         for()變量

         {... ...這裏面能夠鑲嵌無數個for循環}循環

     }im

}

也能夠這樣

 for()

{

   for()

   {}

   ... ...

   for()

    {}

}

 

做用域  循環外面的變量/值能夠用到循環裏面賦值   循環裏面不能夠用到循環外面賦值

if也是   {}外面變量/值能夠用到裏面賦值  {}裏面的變量不能夠到外面賦值

 

   打三角形

圖一


★★
★★★
★★★★
★★★★★

  for (int i = 1; i <= 5; i++) { for(int j=1;j<=i;j++) 每行要循環多少次 {Console.Write("");} Console.WriteLine(); j循環完了 自動換行 } Console.ReadLine();

圖二

★★★★★
★★★★
★★★
★★

 for (int i = 1; i <= 5; i++) { for(int j=1;j<=6-i;j++) {Console.Write("");} Console.WriteLine(); } Console.ReadLine();

圖三

            ★
         ★★
      ★★★
   ★★★★
★★★★★

思路:就是把左邊上部分當成第二張圖的三角形    就是把★改爲空格

  for (int i = 1; i <= 5; i++) { for(int j=1;j<=5-i;j++) {Console.Write("  ");} for (int k = 1; k <= i; k++) { Console.Write(""); } Console.WriteLine(); } Console.ReadLine();

顯示是

圖四

★★★★★
 ★★★★
  ★★★
   ★★
    ★

思路和上面的同樣

            for (int i = 1; i <= 5; i++) { for(int j=1;j<=i-1;j++) {Console.Write("  ");} for (int k = 1; k <=6-i; k++) { Console.Write(""); } Console.WriteLine(); } Console.ReadLine();

顯示是

圖五

         ★
   ★★★
  ★★★★★
 ★★★★★★★
★★★★★★★★★

思路是   左邊直三角形(和圖2相似)加三角形 (個數是2*行數-1)

 for (int i = 1; i <= 5; i++) { for(int j=1;j<=5-i;j++) {Console.Write("  ");} for (int k = 1; k <=2*i-1; k++) { Console.Write(""); } Console.WriteLine(); } Console.ReadLine();

顯示是

圖六
★★★★★★★★★
 ★★★★★★★
  ★★★★★
   ★★★
    ★

思路是 先空白處   在計算星星    每行的星星10-2*行數+1

  for (int i = 1; i <= 5; i++) { for(int j=1;j<i;j++) {Console.Write("  ");} for (int k = 1; k <=10-2*i+1; k++) { Console.Write(""); } Console.WriteLine(); } Console.ReadLine();

顯示是

圖七

      ★
   ★★★
  ★★★★★
 ★★★★★★★
★★★★★★★★★
 ★★★★★★★
  ★★★★★
   ★★★
    ★

思路是  先打上半部分再打下半部分

for (int i = 1; i <= 9; i++)
            {
                if (i <= 5)
                {
                    for (int j = 1; j <= 5 - i; j++)
                    { Console.Write("  "); }
                    for (int k = 1; k <= 2 * i - 1; k++)
                    { Console.Write(""); }
                }                                                     上半部分的內容 else
                {
                    for (int j = 1; j <=i-5; j++)
                    { Console.Write("  "); }
                    for (int k = 1; k <=19-2*i; k++)
                    { Console.Write(""); }
                }                                                   下半部分的內容
                    Console.WriteLine();       
            }
            Console.ReadLine();

練習題:

請用戶輸入一個奇數,用奇數打出一個菱形

 

本身認真作一個

相關文章
相關標籤/搜索