zoukankan      html  css  js  c++  java
  • C#循环结构之嵌套循环

    C#循环结构之嵌套循环

    在一个循环体中包含另一个循环,称为“嵌套循环”。当2个循环嵌套的时候,外层循环体执行一次,内层循环体执行 n 次( n 是内层循环的次数)。请看下面的例子:

    运行结果:

    比较代码和运行结果,我们发现,内层循环体执行 3 次,外层循环体执行 1 次。这就有点像钟表上的时针和分针——时针走一格,分针走一圈。

    下面一段代码打印了一个矩形:

    运行效果:

    思考一下,哪一个变量决定了每一行的循环次数, x 还是 y ?

    任务

    右边代码打印了一个矩形,请修改代码,使它打印三角形:

    using System;
    using System.Collections.Generic;
    using System.Text;
     
    namespace Test
    {
        class Program
        {
            static void Main(string[] args)
            {
                for (int y = 1; y <= 7; y++)
                {
                    for (int x = 1; x <= 7; x++)
                    {
                        Console.Write(x);
                    }
                    Console.WriteLine();//换行
                }
            }
        }
    }

    不会了怎么办

    其实,决定每一行打印个字符的变量就是x,当内层循环条件为 x<=7 时,每一行固定打印 7 个字符;如果改为 x<=y ,那么打印的字符数就会随着行数( y )增长。

    正确的解法:把第 13 行代码改为:

    for (int x = 1; x <= y; x++)

    其实只要找对x与y的关系即可。

    第一行内外循环一次,当x=1时,y=1;

    第二行,第二次外循环开始,内循环第一次,x=1,x<y;内循环第二次,x=2,x=y. 

    第三行,第三次外循环开始,内循环第一次,x=1,x<y;内循环第二次,x=2,x<y;内循环第三次 ,x=3,x=y.

    。。。。。。

    因此可以看出x<=y.故只需更改第13行代码即可。如下:

    for (int x = 1; x <= 7; x++)==> for (int x = 1; x <= y; x++)

    完美!

    ------ 一件事情没有准备好,千万不要开始,一旦开始,就一定不要停止!自己决定的事情就一定要完成,不管付出多大的代价! ------
  • 相关阅读:
    定律法则
    thymeleaf模板引擎基础使用(转)
    OGNL是什么
    ZooKeeper可视化Web管理工具收集(待实践)
    Java下用Jackson进行JSON序列化和反序列化(转)
    JQuery获取select选中值和清除选中状态(转)
    Javascript控制回车键进行表单(form)提交(转)
    Javascript中数据与字符串互转(转)
    MySQL的limit用法及优化(转)
    Javascript中JSON的序列化和反序列化(转)
  • 原文地址:https://www.cnblogs.com/zhjason/p/13805147.html
Copyright © 2011-2022 走看看