step为负数的循环题求解

step为负数的循环题求解,第1张

For i=1 to 3 i值分别为1,2,3,4,得4时停止循环 For j=5 to 1 Step -1 j值分别为5,4,3,2,1,0,为0时停止循环. 当循环内有循环时,外循环的一个变化,对应内循环的从头到尾的完全变化. 如i=1时,j从5 to 1 ,0时才停止. 在内循环,j使n加了5次. 而外循环使内循环做了3次,所以总共是5*3=15次. 结果n=15,j=0,i=4

VB如何获取一个ACCESS数据库中的所有用户数据表的表名列表?

如题,注意要求是用户数据表。

我的下面的方法不行:

for each tb in db.tabledefs

  debug.print tb.name

next

1条回答

' 方法 1

'要引用Microsoft DAO 3.6

Public Sub enumdatabase(dbpath As String)

Dim db As Database

Set db = dbengine.OpenDatabase(dbpath)

Dim Tables As TableDef, fld

For Each Tables In db.tabledefs

'这里可以取得表名Tables.name

'For Each fld In Tables.Fields

If Left(Tables.Name, 4)  MSys Then Print Tables.Name '& --- & fld.Name

'这里可以取得字段名fld.name

'Next fld

Next Tables

db.Close

Set db = Nothing

End Sub

' 方法 2 ADODB

'引用 Microsoft ADO Ext 2.5 for ddl and security

'引用 Microsoft ActiveX Data Objects 2.5 Library

Private Sub Command1_Click()

call OpenConnection

End Sub

Sub OpenConnection()

Dim cnn As New ADODB.Connection

Dim cat As New ADOX.Catalog

cnn.Open Provider=Microsoft.Jet.OLEDB.4.0 & Data Source= cbwscale.mdb

Set cat.ActiveConnection = cnn

For i = 0 To cat.Tables.Count - 1

If Left(cat.Tables(i).Name, 4)  MSys Then Print cat.Tables(i).Name

Next i

End Sub

' 方法 3 ADODC

'引用 Microsoft ADO Ext 2.5 for ddl and security

'部件 Microsoft Ado Data Control 6.0(OLEDB)

Private Sub Command1_Click()

call OpenConnection

End Sub

Sub OpenConnection()

Adodc1.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0Data Source= & cbwscale.mdbPersist Security Info=False

Dim cat As New ADOX.Catalog

cat.ActiveConnection = Adodc1.ConnectionString

For i = 0 To cat.Tables.Count - 1

If Left(cat.Tables(i).Name, 4)  MSys Then Print cat.Tables(i).Name

Next i

Adodc1.RecordSource = select  from bwmain

Set DataGrid1.DataSource = Adodc1

End Sub

分类: 电脑/网络 >>程序设计 >>其他编程语言

解析:

For...Next 语句

以指定次数来重复执行一组语句。

语法

For counter = start To end [Step step]

[statements]

[Exit For]

[statements]

Next [counter]

For匩ext 语句的语法具有以下几个部分:

部分 描述

counter 必要参数。用做循环计数器的数值变量。这个变量不能是 Boolean 或数组元素。

start 必要参数。counter 的初值。

End 必要参数,counter 的终值。

Step 可选参数。counter 的步长。如果没有指定,则 step 的缺省值为 1。

Statements 可选参数。放在 For 和 Next 之间的一条或多条语句,它们将被执行指定的次数。

说明

step 参数可以是正数或负数。step 参数值决定循环的执行情况,如下所示:

值 循环执行,如果

正数或 0 counter <= end

负数 counter >= end

当所有循环中的语句都执行后,step 的值会加到 counter 中。此时,循环中的语句可能会再次执行(基于循环开始执行时同样的测试),也可能是退出循环并从 Next 语句之后的语句继续执行。

提示 在循环中改变 counter 的值,将会使程序代码的阅读和调试变得更加困难。

循环中可以在任何位置放置任意个 Exit For 语句,随时退出循环。 Exit For经常在条件判断之后使用,例如 If...Then,并将控制权转移到紧接在 Next 之后的语句。

可以将一个 For...Next 循环放置在另一个 For...Next 循环中,组成嵌套循环。不过在每个循环中的 counter 要使用不同的变量名。下面的体系结构是正确的:

For I = 1 To 10

For J = 1 To 10

For K = 1 To 10

...

Next K

Next J

Next I

注意 如果省略 Next 语句中的 counter,就像 counter 存在时一样执行。但如果 Next 语句在它相对应的 For 语句之前出现


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9782017.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存