zoukankan      html  css  js  c++  java
  • C# for循环的嵌套 作用域

    for()

    {   循环体可以套无数个for循环

    }

    比如:for()

    {

         for()

        {

             for()

             {... ...这里面可以镶嵌无数个for循环}

         }

    }

    也可以这样

     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();

    练习题:

    请用户输入一个奇数,用奇数打出一个菱形

    自己认真做一个

  • 相关阅读:
    iframe的两种通信方式,iframe的history的优先级
    React-router 将弹框Modal嵌入路由(create a modal route with react-router)
    vue 项目构建 + webpack
    vue 生命周期,v-bind 和 v-on的区别(或 : 和 @的区别),以及父传子、子传父的值传递方式
    linux上配置Sonar代码扫描
    玩转jenkins
    程序小猿的rpa----艺赛旗阶段
    学习完level3加入了uipath家庭,欢迎交流学习。小清风的rpa
    程序员小时光的rpa成长之路(艺赛旗)
    数学期望
  • 原文地址:https://www.cnblogs.com/zhangwei99com/p/6501866.html
Copyright © 2011-2022 走看看