关键词

C# for循环

在某些情况下,我们可能需要重复执行某些代码,这时就需要用到 C# 中的循环语句,C# 中支持 for 循环、foreach 循环、while 循环和 do while 循环等循环语句,本节我们主要来介绍一下 C# 中的 for 循环。

for循环

使用 for 循环可以重复执行一部分代码,而且重复的次数是可以设定的,其语法格式如下所示:

for(初始化语句; 判断条件; 迭代器){
// 循环主体(要执行的代码)
}

for 循环语句的执行流程如下所示:
  • 首先执行初始化语句(通常是一个变量),并且只执行一次,在某些情况下初始化语句可以省略,只保留后面的分号即可;
  • 接下来进行条件判断,如果为 true,则执行循环主体,如果为假,则跳出 for 循环,执行 for 循环以外的代码;
  • 循环主体执行完成后,更新迭代器的值(增加或减少),然后再进行条件判断,如果为真则再次执行循环主体,重复执行此步骤,直至判断条件为假,跳出循环。

for 循环的执行流程如下图所示:


图:for 循环执行流程


【示例】使用 for 循环输出 0 ~ 9 之间的数:
using System;

namespace task.lmcjl.com
{
    class Demo
    {
        static void Main(string[] args){
            for(int i = 1; i <= 9; i++){
                Console.Write("{0} ",i);
            }
        }
    }
}
运行结果如下:

1 2 3 4 5 6 7 8 9

嵌套循环

在 C# 中,循环语句还可以嵌套使用,也就是说我们可以在一个 for 循环内再使用一个或多个 for 循环。

【示例】使用 for 循环输出一个九九乘法表:
using System;

namespace task.lmcjl.com
{
    class Demo
    {
        static void Main(string[] args){
            for(int i = 1; i <= 9; i++){
                for(int j = 1; j <= i; j++){
                    Console.Write("{0} x {1} = {2}  ", j, i, i*j);
                }
                Console.WriteLine();
            }
        }
    }
}
运行结果如下:

1 x 1 = 1
1 x 2 = 2 2 x 2 = 4
1 x 3 = 3 2 x 3 = 6 3 x 3 = 9
1 x 4 = 4 2 x 4 = 8 3 x 4 = 12 4 x 4 = 16
1 x 5 = 5 2 x 5 = 10 3 x 5 = 15 4 x 5 = 20 5 x 5 = 25
1 x 6 = 6 2 x 6 = 12 3 x 6 = 18 4 x 6 = 24 5 x 6 = 30 6 x 6 = 36
1 x 7 = 7 2 x 7 = 14 3 x 7 = 21 4 x 7 = 28 5 x 7 = 35 6 x 7 = 42 7 x 7 = 49
1 x 8 = 8 2 x 8 = 16 3 x 8 = 24 4 x 8 = 32 5 x 8 = 40 6 x 8 = 48 7 x 8 = 56 8 x 8 = 64
1 x 9 = 9 2 x 9 = 18 3 x 9 = 27 4 x 9 = 36 5 x 9 = 45 6 x 9 = 54 7 x 9 = 63 8 x 9 = 72 9 x 9 = 81

无限循环

for 循环中,如果判断条件永远不会为假,那么循环将变成无限循环(也叫死循环),我们在定义循环语句时应尽量避免这种情况的出现。示例代码如下:
using System;
namespace task.lmcjl.com
{
    class Demo
    {
        static void Main(string[] args){
            for (; ;) 
           { 
                Console.WriteLine("编程帮!"); 
           }   
        }
    }
}
运行上面的代码会在控制台一直输出“编程帮!”,如果不手动终止程序那么程序将会一直执行下去。

本文链接:http://task.lmcjl.com/news/18254.html

展开阅读全文