vb.net 教程 2-3 流程控制:循环语句 For...Next 1

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
For...Next 语句用于执行重复操作


最简单的结构:
For 初始值 To 结束值
  执行语句块
Next

 

例如下面的代码:

    Sub Main()
        Dim i As Integer
        Dim s As Integer = 0
        For i = 1 To 100
            s += i
        Next
        Console.WriteLine("1-100相加结果为:" & s)
        Console.ReadKey()
    End Sub


执行结果:

做一下说明:
For i = 1 To 100 =>指定i的初始值为1,结束值为100,实际需要循环100次
s += i           =>s的值加上i的值,这样整个循环类似于 0+1+2+...+100
Next          =>进入下次循环

 

另外:

        Dim i As Integer
        For i = 1 To 100

可以简化到一句代码:

        For i As Integer = 1 To 100

 

for循环中一个重要的语句 Continue For,它的出现使得for循环提前进入下一次
例如,下面的代码:

    Sub Main()
        Console.WriteLine("输出10-30中的偶数")
        For i As Integer = 10 To 30
            If i Mod 2 = 1 Then Continue For
            Console.WriteLine(i)
        Next
        Console.ReadKey()
    End Sub

 

代码中如果是奇数则进入下一个数,如果是偶数,则执行输出。也就是跳到了下一个数字。结果如下:

 

for循环另外一个重要的语句 Exit For,它的出现使得for循环提前结束,

参考以下代码:

    Sub Main()
        Console.WriteLine("当值为20时,停止输出")
        For i As Integer = 10 To 30
            If i = 20 Then Exit For
            Console.WriteLine(i)
        Next
        Console.ReadKey()
    End Sub

当i=20时候,就停止了输出。运行结果如下:

 

 

循环的嵌套:一个循环内可以有一个或多个循环,每个循环内斗可以有一个或多个循环:

考虑以下例子:

对一组数按照由小到大的顺序进行排序:

    Sub Main()
        '需要排序的数字在数组内
        Dim source() As Integer = {32, 12, 44, 43, 79, 1, 10, 65, 21, 53}
        '对循环次数进行计数
        Dim counti As Integer = 0

        Dim i As Integer
        Dim j As Integer

        Dim tmp As Integer

        '循环
        For i = 0 To 8
            '嵌套循环
            For j = 0 To (8 - i)
                '循环次数+1
                counti += 1
                '如果前面那个数大于后面那个数,就把前面那个数排到后面
                If source(j) > source(j + 1) Then
                    tmp = source(j)
                    source(j) = source(j + 1)
                    source(j + 1) = tmp
                End If
            Next
        Next
        '把数字输出来
        For j = 0 To 9
            Console.WriteLine(source(j))
        Next
        '输出循环次数
        Console.WriteLine("循环次数:{0}", counti)
        Console.ReadKey()
    End Sub

运行结果:

 

对于最外面的For,第一次循环,把79排到了最后面,第二次循环把65排到了倒数第二,。。。。

在看循环次数,

i=0 ,j循环9次

i=1 ,j循环8次

。。。。。。

i=(9-1),j循环1次

9+8+7.。。。+1=45次

 

 

由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。

学习更多vb.net知识,请参看 vb.net 教程 目录

 

 

 

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值