繁体   English   中英

嵌套 While 循环 (C#)

[英]Nesting While Loops (C#)

编码员晚上好 - 对于我在软件开发课上的作业,我必须嵌套 while 循环。 对于外循环,我必须从 5 倒数到 1,而内循环我必须以 2 为增量从 0 数到 10。我的问题是我没有看到 1 和 2 的错误,我今晚上课,老师浏览了程序,代码是相同的。 外循环的输出是正确的,但内循环的输出似乎是从 4 开始的,而它应该从 0 开始,跳过 2。当代码明确指出最多 10 时,内循环也计数到 12。我试图将“i”变量声明为 0,结果相同。 这就是为什么我认为这是一个错误。 我对编码相当陌生,所以我不熟悉使用错误工具。 非常感谢您的意见! :)

{
class Program
{
    static void Main(string[] args)
    {
        int k = 5; //assigned variable for 1st loop  
        int i; //assigned variable for 2nd loop

       while (k > 0) //run first loop as long as "k" is greater than 0
        {
            i = 0;//set i variable to 0 
            while (i <= 10)//run second loop as long as "i" is greater than or equal to 10
                           //second loop runs until first loop is over
            {  
                i += 2;//count "i" varible in increments of 2
                Console.WriteLine("k= {0} i= {1} ", k, i);//print index value for both variables

            }
                k--;//subtract "k" variable by increment of 1

        }

    }
}

}

下面是预期的输出(记事本)和我收到的输出(VB)。

预期产出

上面给出的代码的输出

对于内部循环,您在 writeline 之前增加 i,因此它永远不会打印 0(对于每个内部循环,它立即从 2 开始)。 反转这些行:

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

红宝石版本:

k = 5
while k > 0
    i = 0
    while i <= 10
        puts "k = #{k}: i = #{i}"
        i += 2
    end
    k -= 1
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM