程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> asp中for循環的使用方法

asp中for循環的使用方法

編輯:關於ASP編程

       循環是指在指定情況下,多次重復執行一組語句。最常用(for …next、 do …loop),

      1、重復執行的語句叫循環語句。

      循環語句可以分為三種類型:

      (1)、當條件不為假之前的時候重復執行語句。

      (2)、當條件變為真之前重復執行語句。

      (3)、按指定的次數重復執行語句。

      2、For…Next 循環 如果重復操作的次數固定,使用 For…Next 循環是一個很好的選擇,此外也將介紹語法很類似的 For Each…Next循環,它適用在數組或集合的重復循環,(一)For…Next 在 For…Next 循環的語法中使用初值、終值、步長以及循環變量來完成重復計數的工作。當進入循 環第 一次執行時,循環變量便由初值開始累加一次步長,一直到等於或超過終值為止。

      例如:

      初值為1,終 值為 10, 步長為 2,

      則循環將執行 5 次,

      循環變量的值分別是 1、3、5、7、9,

      第六次因循環變量累加到 11, 已經超過 10 了,便不再執行循環。

      3、For…Next 循環的語法如下:

      For 循環變量=初值 To 終值 Step 步長

      程序語句…

      [ Exit For]

      程序語句…

      Next

      說明:

      (1)、循環變量:這個變量通常是使用整數,但是必要時也可以是其他數值類型,他是一個數值變量。

      (2)、初值:這是循環變量的初始值,為數值類型。其值不一定是整數, 或小數,VB會自動給他取整數

      (3)、終值:循環變量的終值,為數值類型。 其值不一定是整數, 或小數,VB會自動給他取整數

      (4)、步長:循環變量每次的增加量,步長的數值類型應該和循環變量一樣, 其值可以是正數(遞增循環)或是負數(遞減循環),當不能為0,如果沒有特別指定,則步 長默 認為 1。

      (5)、循環體:在For語句和Next語句之間的語句,可以是一個或多個語句.

      (6)、Next:是循環終端語句,在Next後面的"循環變量"與For語句中的"循環變量"必須相同.

      如:for i=0 to 10 Step 1

      ......

      Next

      執行過程:

      (1)、把初值1賦給循環變量i

      (2)、將i的值與終值10進行比較,若i>10,則跳出循環,執行(5),否則執行循環體.

      (3)、i增加一個步長值,即i=i+1

      (4)、返回(2)繼續執行

      (5)、執行Next語句後面的代碼

      這個循環的作用是:根據 FOR 語句中所的初值、終值和步長,來確定循環次數,反復執行循環體內各語句。For…Next 循環尊循"先檢查、後執行"的原則,即先檢查循環變量是否超過終值,

      然後決定是否執行循環體。因此,在下列情況下,循環體將不會執行,

      (1)、當步長這正數,初值大於終值

      (2)、當步長這負數,初值小於終值

      當初值等於終值時,不管步長是正數還是負數,都執行一次循環.

      For語句和Next語句必須成對出現,不能單獨使用,並且For語句必須在Next語句之前.

      循環次數N 的一般公式為:

      N=Int((終值-初值)/步長)+1

      For…Next循環中的初值小於終值時,步長必須為正值,表示由小到大計數;若初值大於終值時,步長必須設為負值,表示由大到小計數。

      例如:初值小於終值時

      復制代碼 代碼如下:

      <%

      for i=0 to 10 Step 1 '默認步長為1可以不寫

      Response.Write(i&"
    ")

      Next

      %>

      例如:初值大於終值時

      復制代碼 代碼如下:

      <%

      for i=10 to 1 Step -1

      Response.Write(i&"
    ")

      Next

      %>

      當步長大於0時:當初值<=終值時,For…Next之間的語句會被執行一次,接著循環變量會被加上步長,如果還小於終值,則再執行一次For…Next之間的語句,一直到循環變量累加到大於終值,才會跳離For…Next循環。

      復制代碼 代碼如下:

      <%

      for i=1 to 1 Step 0.5

      Response.Write(i&"
    ")

      Next

      %>

      當步長小於0時:當初值>=終值,會執行循環內的語句一次,然後循環變量減去步長(負的),如果循環變量還>=終值,則再執行一次循環內的語句,一直到循環變量累加到小於終值,才會跳離For…Next循環。

      循環語句的執行過程:

      復制代碼 代碼如下:

      <%

      for i=2 to 1 Step -1

      Response.Write(i&"
    ")

      Next

      %>

      4、循環語句的執行過程:

      (1)通過For語句進入循環。如果循環變量的初值、終值、步長為算術表達式,系統首先計算出算術表達式的值,然後將初值賦給循環變量,並將終值、步長的值存入內存

      (2)將循環變量的值與終值進行比較,當循環變量的值未超過終值的范圍時,則順次執行循環體內的各個語句。若循環變量的值超過終值的范圍,則退出循環,執行NEXT的後繼語句。

      (3)在執行完循環體各語句後遇到NEXT語句,將循環變量增加一個步長的值,再去終值,比較,如果仍不超過 起開涠,則再次執行循環體內的各語句,這樣重復執行,直到循環變量的值超過終值的范圍,結束該循環,執行Next的後繼語句。

      課堂例題:

      【例 1】

      簡單1加到10,用循環特點每次加1

      復制代碼 代碼如下:

      <%

      for i=0 to 10

      sum=sum+i

      Next

      Response.Write(sum)

      %>

      最終顯示結果:55

      【例 2】

      復制代碼 代碼如下:

      <%

      for i=0 to 10 step 2

      Response.Write(i&"
    ")

      Next

      %>

      最終顯示結果:0,2.4,6,8,10

      【例 3】

      復制代碼 代碼如下:

      <%

      for i=0 to 10

      Response.Write(i&"
    ")

      if i=5 then

      exit for'強制結束循環

      end if

      Next

      %>

      在上述程序中,原本 i 會從1 累加到10,執行 10次,但是在 i 累加到 5 時,符合了 i=5 的判斷式,結

      果執行 Exit For 語句,跳離了循環,因此最後網頁顯示的結果是“0,1,2,3,4,5,”

      【例 4】

      復制代碼 代碼如下:

      <%

      for i=10 to 0 step -1

      sum=sum+i

      Next

      Response.Write(sum)

      %>

      最終顯示結果:55

      5、我們以范例來說明 For…Next循環的不同用法:

      【例 1】

      復制代碼 代碼如下:

      <% For i=1 To 10

      Response.write i&","

      Next

      %>

      上列程序會累加上 I,而循環中的 i 會由1,2,3,…每次累加 1,一直到 10,總共執行 10 次,最後網頁會顯示出“1,2,3,4,5,6,7,8,9,10, ”

      【例 2】

      復制代碼 代碼如下:

      <%

      For a=1 To 10 Step 0.5

      Response.write a&","

      Next

      %>

      上列程序中 a將每次累加 0.5,總共執行 20 次,最後在網頁中,顯示出“1,1.5,2,2.5,3,3.5…

      9.5,

      【例 3】

      復制代碼 代碼如下:

      <%

      For j=10 To 1 Step -1

      Response.write j&","

      Next

      %>

      上列程序中j 將由 10到 1,每次累減 1,最後在網頁中,顯示出“10,9,8,7,6,5,4,3,2,1, ”

      【例 4】

      循環中的初值、終值和步長,在程序一開始執行時只讀入一次,隨後即使在循環內更改其值,也不會對循環執行有所影響。

      復制代碼 代碼如下:

      <%

      StepNum=1

      EndNum=1

      For i=1 To endNum Step stepNum

      Response.write i&","

      StepNum=StepNum-0.1

      EndNum=EndNum+1

      Next

      %>

      上列程序中,故意在循環內將步長每次減少 0.1,將終值每次都加 1,意圖使 i 永遠達不到終值,但是因為步長和終值都只讀取一次,便不會再更改,因此這段程序的輸出結果還是“1” 。

      【例 5】

      循環中的循環變量,是會在循環中更動的,因此:

      復制代碼 代碼如下:

      <%

      For k=1 To 10

      Response.Write k&","

      Next

      %>

      上列程序會累加上 k,而循環中的 k 會由1,2,3,…每次累加 1,一直到 10,總共執行 10 次,最後網頁會顯

      示出“1,2,3,4,5,6,7,8,9,10,

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved