亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > VBScript > 正文

VBS基礎編程教程 (第5篇)

2020-06-26 18:10:40
字體:
來源:轉載
供稿:網友
第五篇(共六篇):  

       請允許我縣描述一下我現在的環境:氣溫高達37攝氏度, 而我忘記了圖書館開門的時間, 還要在這里站上一個小時, 在熱帶植物的包裹下, 各種奇怪的小飛蟲圍著我轉來轉去. 不過令我欣慰的是, 終于寫到五了, 還有兩課我們的"基礎篇"就要結束了.  

       今天我們來了解語言本身的最后一個論題:數組.  

  要理解"數組", 這個概念我覺得另一種翻譯對學習來說更加容易:"陣列", 沒錯, 數組就是一個陣列, 一個數據的陣列. 最簡單的例子是數據庫系統, 假設你要儲存20名學生的英語成績, 如果不是用數組, 你則要創建20個不同的變量, 累死. 數組就是類型相同(重要!)的一組數據(或者n組), 用來儲存相關的量, 最簡單的數組是一維數組, 我們就先來學習它吧.  

  什么是一維數組呢? 在3維以下,你可以利用幾何知識來理解"維"的概念,一維相當于一條線, 二維則是一個矩形, 三維是一個長方體. 我知道這么講是很抽象的, 我們先舉個一維數組的例子就比較容易了解了.  

dim a(9) '從零開始  
for i=0 to 9  
    a(i)=i '填充每一個數組元素  
    msgbox(a(i)) '輸出數組元素  
next  

  我們可以看到, 定義一個數組的方法和定義一個變量沒有什么不同, 同樣是使用dim語句. 定義一維數組的方法如下:  

dim 數組名(元素數量), 這里大家要注意一點, 這里定義的元素數量總是比你要的要少一個, 因為一個數組的起點是0號數據而不是1, 所以大家一定要小心: 你需要10個數據, 就定義"9", 需要100個就定義99, 依此類推. 數組的元素可以看成一個個獨立的變量, 你可以像獨立的變量那樣使用他們. 數組元素的量可能是毫無關系的, 比如第一個數組元素儲存你的年齡, 第二個儲存今年西瓜的銷售量, 但這種做法是不鼓勵的, 甚至是不被接受的, 不要這么干, 這樣的情況請定義獨立的變量. for語句在數組中可算是大顯身手, 還記得for嗎? 它累加一個變量, 我們可以把這個變量應用在數組中正好用來讀取或者填充按照順序排列的數組元素, 上面就是這樣一個例子. 數組其實是很簡單的東西(再BASIC語言里面), 數組難的是怎么搗弄這些循環, 讓他們按照你的要求運轉. 這個等到二維數組再說, 我們先看看如何手工填充數組.  

  如果你這個都想不到的話, 那你真是白學了:  

dim name(7),str '一共八個學生, str變量是用來把他們儲存成一個字符串以便輸出  
for i=0 to 7  
    name(i)=inputbox("請輸入第" & i+1 & "個學生的名字")  
    str=str & " " & name(i)  
next  
msgbox(str)  

  這樣我們就有了一個小小的數據庫, 它們的數據排列可以看成這樣:  

  name(0),name(1),name(2).....name(7)  

  看到了吧, 所以我說我們可以把它看成是"一條線", 等到我們學到了文件操作, 就可以把他們輸出到文件中去了. 一維數組有很多用處, 我們來看一下一個復雜的例子. 我們要儲存3各學生的名字, 身高, 成績這三種數據, 由于名字是字符串, 而身高可能是浮點數(帶小數點的數), 成績則可能是整數, 所以我們不能把他們儲存在一個數組里面(不要忘記, 數組織只能存儲同類的數據), 所以我們要建3個數組, 以下是例程:  

dim name(2), high(2), mark(2) '定義三個數組分別儲存3個人的名字, 身高和得分  
dim ctr '計數器  
for ctr=0 to 2  
    name(ctr)=inputbox("請輸入第"  & ctr+1 & "個學生的姓名")  
    high(ctr)=inputbox("請輸入第"  & ctr+1 & "個學生的身高")  
    mark(ctr)=inputbox("請輸入第"  & ctr+1 & "個學生的得分")  
next  

  OK, 我們已經填充好了數據, 現在我們的小小數據庫只能按順序輸入, 我們要讓它看起來像點樣子, 我們來給他設計查詢功能:  

'接著上面的程序  
dim cname, temp '要查詢的名字, 和一個臨時變量, 用來儲存數據的位置  
cname=inputbox("請輸入你要查詢的名字:")  
for ctr=0 to 2 '遍歷所有name數組的成員, 尋找要查詢的名字  
    if name(ctr)=cname then  
        temp=ctr '記錄數據位置  
        exit for '退出循環, 和exit do的用法一樣  
    end if '不要忘了end if  
next  
msgbox("姓名:" & name(temp) & " " & "身高:" & high(temp) & " " & "得分:" & mark(temp))  

  嘿嘿, 有意思吧, 其實在這個程序里面, 那個temp變量完全沒有必要, 只是為了更清楚地說明問題. 因為當exit for以后ctr變量的值就不會改變, 儲存的正好是對應數據在數組中的位置, 寫這個temp變量是為了照顧到以后要學C++的朋友(C++可以在for語句里聲明新變量, 只在這個for結構中有效, 所以到了外部就不能訪問了). 也就是說可以簡化成如下:  

dim cname  
cname=inputbox("請輸入你要查詢的名字:")  
for ctr=0 to 2  
    if name(ctr)=cname then exit for '因為只有exit for就不需要塊if了  
next  
msgbox("姓名:" & name(ctr) & " " & "身高:" & high(ctr) & " " & "得分:" & mark(ctr))  

  這是最直接的路子. 好好重讀一下上面所有的源代碼, 然后自己寫幾個程序, 完全搞清楚一維數組及其應用以后再看后面的二位數組. 二維數組好像是一個一維數組的集合, 就好像"線積成面"一樣, 由n各一維數組組成二維數組, 這是初學者比較好理解的辦法(比較精確的是用"編號"的概念去理解, 因為4維以上的數組就比較難以用歐幾里德幾何概念去解釋了). 二維數組是很好解釋的, 我們來看一下:  

dim a(2,2) '從零開始, 一共有3 X 3 = 9 個數據  
dim i,j '需要兩個計數器  
for i=0 to 2  
    for j=0 to 2 '使用嵌套循環  
        a(i,j)="X"  
    next  
next  

  我們創建了一個這樣的二維數組(那些","是我用來分割元素的,并不存在), 了解二維數組的了嗎? 不清楚我們再講一下  

編號 0 1 2  
0    X,X,X  
1    X,X,X  
2    X,X,X  

  二維數組的看起來是不是就是一個矩形呢?(你在內存中看不到這樣的矩形, 只是便于你理解), 每個數據都有編號, 由兩個數來定位, 這個很像(非常像)你在國際象棋棋盤上尋找一個格, 我們用類似"C6","A2"這樣的"垂直坐標"進行定位, 對, "垂直坐標", 很確切. 我們要使用一個二維數組元素的時候可以和普通變量一樣使用, 只要指定數組元素的"定位點"就可以了, 例如  

a(0)(1)=1, b(2)(1)="你好", 諸如此類. 要注意的是二維數組也只能儲存類型相同的元素, 而且上標(起點)也從0開始. 計算一個二維數組的元素個數只要把兩個下標+1(以得到實際的值)再乘起來就可以了, 非常類似于求一個矩形的面積.  

  假如需要儲存的都是同一類型的數據, 我們就可以用二維數組, 比如要儲存5個人的姓名,國籍,民族, 就可以使用二維數據  

dim info(4,2) '一共五個人, 要儲存的數據類型有3項  
dim i,j  
for i=0 to 4  
    for j=0 to 2  
    dim opt '定義一個變量用于存儲數據項提示  
        select  case j '判斷應該輸入的是什么數據      
        case 0  
            opt="姓名"  
        case 1  
            opt="國籍"  
        case 2  
            opt="民族"  
        end select  
        info(i,j)=inputbox("請輸入第" & i+1 & "個人的" & opt)  
    next  
next  
'輸出太麻煩了, 我懶得動, 你知道那么回事就行了  

  這樣就不需要定義3個一維數組了.  

  多位數組(三維以上)的定義和使用方法與二維數組一樣, 但不太好在歐幾里德幾何空間里加以解釋, 幸好我們并不太常用那么多維的數組.定義一個三位數組:dim a(1,2,3) '一共24各數組元素.  

  今天因為要搬家(我喜歡Sengkang啊, 可是MM嫌交通不便, 誰不知道她只想去逛街),而GF要去和她的同學去參加什么試驗半夜才回家, 所以下午我只能自己去押車搬家了, 5555~~好可憐, 這次就請大家原諒我少寫一點, 我可是站在圖書館外寫的啊,  

現在腿都軟了~~~ 本來還要講"動態數組"的, 但想了想還是放到"進階部分"再說吧.  

要點:  

1) 一維數組是"線", 二維數組是"面", 三維數組是"體" (多維數組就亂套)  

2) 數組的下標從0開始  

3) for循環在數組的應用中起了很大作用, 二維數組需要嵌套循環  

作業:  

  上次出的"百雞問題", 大家喜歡嗎? 以后我們就做這種需要動腦的題目, 那些簡單的實踐, 大家一定要多做!  

1) 定義一個數組, 包含5個元素, 都是隨機整數(隨便輸入), 要求把他們按照從大到小的順序排列起來  

2) 有兩個二維數組a(4,4)和b(4,4) (元素值隨便), 交換兩個數組(原來的a的所有元素值變成b的, b的所有元素值變成a的)  

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久噜噜噜久久中文字免| 久久久国产影院| www.美女亚洲精品| 中文字幕日韩精品有码视频| 国内精品免费午夜毛片| 成人欧美在线观看| 亚洲国产精品推荐| 欧美有码在线观看| 热99精品里视频精品| 亚洲第一av在线| 国产欧美精品一区二区三区介绍| 亚洲国产欧美在线成人app| 国产福利视频一区二区| 亚洲大胆人体视频| 久久理论片午夜琪琪电影网| 国产视频精品在线| 亚洲成人免费在线视频| 久久国产视频网站| 中文字幕精品一区二区精品| 欧美影院在线播放| 欧美日韩裸体免费视频| 激情成人在线视频| 欧美性猛交xxxx乱大交| 国产福利精品av综合导导航| 日韩欧美成人区| 成人精品久久一区二区三区| 中文字幕亚洲一区| 国产视频精品在线| 久久久91精品| 亚洲人成网站777色婷婷| 国产日韩欧美电影在线观看| 日韩精品在线免费| 欧美人在线视频| 欧美激情a∨在线视频播放| 精品久久香蕉国产线看观看gif| 亚洲欧美日韩一区在线| 欧美性猛交xxxx免费看漫画| 欧美激情一级欧美精品| 日本人成精品视频在线| 精品偷拍一区二区三区在线看| www高清在线视频日韩欧美| 亚洲欧美综合精品久久成人| 欧美亚洲成人精品| 国产综合福利在线| 亚洲国产欧美一区二区丝袜黑人| 日韩经典一区二区三区| 国产激情视频一区| 91精品视频在线| 狠狠爱在线视频一区| 欧美最顶级丰满的aⅴ艳星| 久久97精品久久久久久久不卡| 国产精品久久久久久久久影视| 国产一区视频在线| 狠狠久久五月精品中文字幕| 8050国产精品久久久久久| 欧美日韩亚洲成人| 91av在线视频观看| 欧洲s码亚洲m码精品一区| 欧美电影免费观看高清| 欧美电影免费观看高清完整| 97色在线观看| 欧美日韩在线观看视频| 国产欧美一区二区三区久久| 黄色成人av网| 伊人久久男人天堂| 欧美大尺度激情区在线播放| 尤物yw午夜国产精品视频| 精品亚洲一区二区三区| 热re91久久精品国99热蜜臀| 98午夜经典影视| 国产精品一区二区性色av| 在线精品高清中文字幕| 成人激情黄色网| 国产精品第七十二页| 日韩av网址在线观看| 国产欧美日韩精品在线观看| 日韩精品免费在线视频| 亚洲人午夜色婷婷| 日韩福利视频在线观看| 久久精品电影网站| 精品成人在线视频| 久久久中文字幕| 亚洲自拍小视频| 57pao国产成人免费| 97在线精品国自产拍中文| 热久久99这里有精品| 777午夜精品福利在线观看| 日韩在线观看成人| 亚洲精品综合久久中文字幕| 精品视频久久久久久久| 欧美日韩视频免费播放| 欧美麻豆久久久久久中文| 日韩影视在线观看| 最近2019年中文视频免费在线观看| 国产精品电影一区| 8090理伦午夜在线电影| 国产成人精品免费视频| 国产精品精品视频| 91午夜理伦私人影院| 91网站在线免费观看| 国产精品偷伦免费视频观看的| 欧美一级大片在线观看| 久久免费精品视频| 中文字幕av日韩| 日韩精品高清在线| 欧美主播福利视频| 亚洲一级黄色片| 日韩av片电影专区| 中文字幕九色91在线| 日韩欧美成人区| 欧美色播在线播放| 欧美综合在线观看| 热草久综合在线| 国产视频亚洲视频| 国产精品一区二区三区久久久| 色偷偷偷综合中文字幕;dd| 国产成人拍精品视频午夜网站| 亚洲美女视频网站| 欧美日韩在线观看视频小说| 91麻豆国产精品| 成人黄色在线观看| www.日韩av.com| 精品国产精品自拍| 国产精品视频播放| 欧美在线亚洲在线| 伊人亚洲福利一区二区三区| 日韩视频中文字幕| 成人免费网视频| 色综合色综合网色综合| 中文字幕久热精品在线视频| 国产精品老女人精品视频| 欧美视频国产精品| 色播久久人人爽人人爽人人片视av| 色妞久久福利网| 2019中文字幕在线| 中文字幕一区二区三区电影| 麻豆国产va免费精品高清在线| 美日韩丰满少妇在线观看| 亚洲午夜精品久久久久久性色| 国产精品一二区| 亚洲伊人一本大道中文字幕| 91在线观看免费观看| 国产激情久久久久| 欧美在线不卡区| 欧美一级淫片aaaaaaa视频| 91精品国产乱码久久久久久久久| 亚洲电影免费观看高清| 国产日韩视频在线观看| 777国产偷窥盗摄精品视频| 中文字幕av一区中文字幕天堂| 国产亚洲精品激情久久| 粉嫩老牛aⅴ一区二区三区| 国产91在线播放精品91| 91网站在线免费观看| 国产精品欧美一区二区三区奶水| 久久九九有精品国产23| 国产在线精品自拍| 91久久久久久久| 亚洲一区第一页| 日韩欧美精品免费在线| 久久视频在线观看免费| 精品视频久久久久久久| 欧美成人三级视频网站| 日韩精品高清在线观看|