




已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
精品文檔第6章 深入學(xué)習(xí)變量在實際編程過程中,經(jīng)常用變量交換臨時的數(shù)據(jù)或資源,前面已經(jīng)了解了變量的概念,這一章來學(xué)習(xí)靜態(tài)變量、變量數(shù)組及動態(tài)管理變量。本章學(xué)習(xí)內(nèi)容:6.1 認(rèn)識靜態(tài)變量 6.5 動態(tài)管理數(shù)組變量6.2 靜態(tài)變量的應(yīng)用 6.6 定時提醒小程序練習(xí)6.3 變量的命令操作 6.7 課后練習(xí)6.4 變量數(shù)組的定義 合理的運用變量在編程過程中,能簡化或優(yōu)化程序代碼運行的效率。全局變量、程序集變量或局部變量,建立時默認(rèn)為非靜態(tài)變量,只有在子程序里局部變量才有“靜態(tài)”屬性設(shè)置。6.1 認(rèn)識靜態(tài)變量在子程序里面建立兩個變量。分別命名為“靜態(tài)變量”和“非靜態(tài)變量”,用鼠標(biāo)在靜態(tài)變量的“靜態(tài)”屬性欄里點擊,出現(xiàn)“”符號,這樣,靜態(tài)變量就具有了靜態(tài)屬性?!办o態(tài)”屬性欄里沒有“”符號,說明該變量為非靜態(tài)變量。1靜態(tài)變量與動態(tài)變量的區(qū)別:非靜態(tài)變量在其所在子程序開始被執(zhí)行前自動分配存儲空間并初始化,在所在子程序執(zhí)行完畢后自動釋放所分配的存儲空間,也就是說,變量的存儲空間僅在其所在子程序執(zhí)行過程中存在;而靜態(tài)變量則保留現(xiàn)行內(nèi)容以供下次繼續(xù)使用。2全局變量和程序集變量具有“靜態(tài)”屬性嗎?雖然在全局變量和程序集變量里沒有設(shè)置“靜態(tài)”選項,但是全局變量一旦賦值,變量數(shù)據(jù)就占據(jù)了指定的存儲空間,并在程序運行期間永久存在僅在應(yīng)用程序啟動運行前被初始化一次,只有程序結(jié)束,存儲空間才被釋放。程序集也是一樣,在程序集里面,程序集變量一旦賦值,只有程序集退出時,存儲空間才被釋放。6.2 靜態(tài)變量應(yīng)用下面跟著實例來演示靜態(tài)變量的應(yīng)用。新建一個易語言程序,加入一個畫板和一個按鈕組件,更改畫板的“邊框”屬性為“凹入式”,“畫板背景色”屬性為白色。雙擊按鈕進(jìn)入程序設(shè)計界面,在“_按鈕1_被單擊”子程序里面建立兩個整數(shù)型變量,分別命名為“靜態(tài)變量”和“非靜態(tài)變量”,在靜態(tài)變量的“靜態(tài)”屬性欄里用鼠標(biāo)點擊,出現(xiàn)“”符號,使其具有“靜態(tài)”屬性。順序輸入以下程序代碼。畫板1.滾動寫行 (靜態(tài)變量)畫板1.滾動寫行 (非靜態(tài)變量)靜態(tài)變量 靜態(tài)變量 1非靜態(tài)變量 非靜態(tài)變量 1按F5運行程序,連續(xù)單擊3次按鈕。在畫板得出如下結(jié)果。001020從結(jié)果可以看出,整數(shù)型靜態(tài)變量和非靜態(tài)變量的初始化值都是0,子程序結(jié)束后非靜態(tài)變量的數(shù)據(jù)清空,而靜態(tài)變量的數(shù)據(jù)依舊保留。6.3 變量的命令操作變量建立好并指定了數(shù)據(jù)類型后,如果不進(jìn)行賦值操作,變量會默認(rèn)初始化數(shù)值。在系統(tǒng)核心支持庫里面有變量兩個操作命令。輸入“賦值”命令按回車,代碼行會變?yōu)椤埃??”,在易語言里面賦值操作的符號是“=”,后者數(shù)據(jù)賦予給前者。可以直接輸入變量名加“=”加變量值。如:變量1=100變量2=“易語言”加入文本型變量3,輸入“連續(xù)賦值”命令,第一個參數(shù)是用作賦于的值或資源,第二個參數(shù)是被賦值的變量或變量數(shù)組,可以被重復(fù)添加。連續(xù)賦值 (“全中文全可視易語言”, 變量2, 變量3)運行程序后,變量2和變量3的值都等于“全中文全可視易語言”。這里不可以用連續(xù)賦值命令給變量1和變量2賦值,因為它們是不同類型的變量。6.4 變量數(shù)組的定義請打開上一章所完成的程序,將“_按鈕1_被單擊”子程序中的內(nèi)容全部刪除,然后進(jìn)行以下輸入操作:加入一個名為單維變量的整數(shù)型變量,在其數(shù)組屬性中輸入“3”,表明此變量為一個單維數(shù)組,共有 3 個成員。加入一個名為多維變量的整數(shù)型變量,在其數(shù)組屬性中輸入“2,2”,表明此變量為一個二維數(shù)組,共有 4 (2 2 的結(jié)果)個成員。順序輸入下列語句行:單維變量 1 100多維變量 2 1 200畫板1.滾動寫行 (單維變量 1, 多維變量 2 1)畫板1.滾動寫行 (多維變量 3)多維變量 4 300畫板1.滾動寫行 (多維變量 2 2)按F5運行程序,連續(xù)單擊按鈕。在畫板得出如下結(jié)果。100200200300通過上面的程序可以知道:數(shù)組變量可以有多個成員變量,每個成員變量等同于一個單獨變量。各成員變量的引用方法為:數(shù)組變量名 + “” + 從 1 開始的成員位置 + “” + .譬如上面的單維變量,它有“單維變量 1”、“單維變量 2 ”、“單維變量 3 ”3個成員。多維變量有“多維變量 1 1 ”、“多維變量 1 2 ”、“多維變量2 1 ”、“多維變量2 2”四個成員。該表是將經(jīng)過上述運算后,各變量變更后的數(shù)值。變量名初始值運行后的值單維變量 10100單維變量 200單維變量 300多維變量 1 100多維變量 1 200多維變量 2 10200多維變量 2 20300多維變量的成員也可以使用單維的方式來引用。譬如上面的“多維變量 3”等同于“多維變量 2 1 ”,“多維變量4 ”等同于“多維變量 2 2 ”。此方法可用來遍歷數(shù)組的所有成員。請繼續(xù)輸入進(jìn)行以下操作:(1)加入一個名稱為變量1的整數(shù)型變量。(2)添加以下程序代碼。計次循環(huán)首 (取數(shù)組成員數(shù) (多維變量), 變量1)畫板1.滾動寫行 (多維變量變量1)計次循環(huán)尾 ()從運行結(jié)果可以看出,此段程序可以順序顯示出多維變量中所有成員的內(nèi)容。其中前4行是第一次的運行結(jié)果,后4行是剛才輸入新程序后的運行結(jié)果,再試一試將上面添加的程序段中的多維變量改為單維變量。計次循環(huán)首 (取數(shù)組成員數(shù) (單維變量), 變量1)畫板1.滾動寫行 (單維變量變量1)計次循環(huán)尾 ()運行后查看結(jié)果。前面已說過了數(shù)組變量的每個成員可以當(dāng)成單個變量應(yīng)用,但是每個成員的數(shù)據(jù)類型必須相同。如果數(shù)組變量是整數(shù)型,里面對應(yīng)的每個成員也必須是整數(shù)型,否則變量賦值時會提示錯誤。6.5 動態(tài)管理數(shù)組變量下面將繼續(xù)講述如何動態(tài)管理數(shù)組變量,它是易語言的高級特性之一。在系統(tǒng)核心支持庫下有一組數(shù)組操作命令,我們通過一個簡單的例子來了解它們。在窗體上創(chuàng)建一個按鈕組件。把其寬度拉長,更改窗口標(biāo)題為“動態(tài)顯示文字”。分別建立文本變量1和整數(shù)型變量2,在變量1的數(shù)組屬性里輸入0,請繼續(xù)輸入進(jìn)行代碼:重定義數(shù)組 (變量1, 假,7) /把變量1的成員數(shù)重定義為7變量1= “中”, “文”, “編”, “程”, “易”, “語”, “言” /賦值給變量1每個成員對應(yīng)的文本 按鈕1.標(biāo)題=“” /清除按鈕1的標(biāo)題文字計次循環(huán)首 (取數(shù)組成員數(shù) (變量1), 變量2) /循環(huán)次數(shù)為變量1的成員數(shù)按鈕1.標(biāo)題 按鈕1.標(biāo)題 到文本 (變量1 變量2) / 取變量1每個成員文字給按鈕1的標(biāo)題延時(300) /每次取變量1成員內(nèi)容間隔的時間計次循環(huán)尾 ()按F5運行程序,點擊按鈕1,按鈕的標(biāo)題會動態(tài)顯示“中-文-編-程-易-語-言”。下面刪除代碼段:重定義數(shù)組 (變量1, 假, 7)再運行程序,發(fā)現(xiàn)結(jié)果一樣,所以得出結(jié)論:變量1 “中”, “文”, “編”, “程”, “易”, “語”, “言” 這種賦值給變量1的操作,可以重新改變變量成員數(shù)目,并清除原先所有數(shù)據(jù)。原來成員數(shù)為0個成員,執(zhí)行后改為7個成員。再清除循環(huán)的一組代碼,添加一個新的文本型變量3,數(shù)組成員為0,繼續(xù)輸入:變量3=變量1信息框(取數(shù)組成員數(shù)(變量3),0,)運行后,彈出信息框,得出“7”個變量3的成員數(shù),也就是說明:變量3=變量1 這行代碼把變量1的成員數(shù)及其內(nèi)容同時賦給變量3,等同于:“復(fù)制數(shù)組”命令:復(fù)制數(shù)組(變量1,變量3)。用Ctrl+回車鍵把信息框代碼行置為草稿,接著輸入以下代碼:重定義數(shù)組 (變量3, 真, 3, 4) /把單維變量3重定義為二維變量信息框 (取數(shù)組下標(biāo) (變量3, 1), 0, ) /得出變量3第一維的成員數(shù)信息框 (取數(shù)組下標(biāo) (變量3, 2), 0, ) /得出變量3第二維的成員數(shù)運行后得出變量3第一維的成員數(shù)為3;第二維的成員數(shù)為4。6.6 定時提醒小程序練習(xí)變量數(shù)組是編程中臨時存儲多個數(shù)據(jù)的“小倉庫”,其類型可以是整數(shù)、文本、字節(jié)集等等,在實際編程中會常常讀成員內(nèi)容時,遇到超出下標(biāo)的錯誤,好多出現(xiàn)在循環(huán)代碼中,需注意!下面就來練習(xí)本節(jié)的定時提醒小程序。在新建的易程序窗口上添加如圖所示的組件,調(diào)整位置大小并更改標(biāo)題內(nèi)容。選住時鐘組件,在屬性面板上更改“時鐘周期”為1000,單位是毫秒,1秒=1000毫秒,目的是每1秒都執(zhí)行對應(yīng)的周期事件。雙擊標(biāo)題為“加入提示”的按鈕,進(jìn)入代碼編寫窗口。新建 “提示內(nèi)容”、“提示時間”兩個文本型和“變量1”整數(shù)型程序集變量,并設(shè)置“提示時間”變量的數(shù)組屬性為0個成員。在“_按鈕1_被單擊” 子程序下輸入:提示內(nèi)容 編輯框1.內(nèi)容提示時間 分割文本 (編輯框2.內(nèi)容, “:”, )切換到時鐘1屬性面板,點擊獨有的周期事件,進(jìn)入“_時鐘1_周期事件”子程序代碼編寫窗口,也可以直接用雙擊時鐘1組件進(jìn)入“_時鐘1_周期事件”子程序代碼編寫窗口。輸入以下代碼:上面的命令代碼是取現(xiàn)在時間的小時部分和分鐘部分與指定提示的時間判斷,相同則執(zhí)行信息框提示。變量1的目的是控制一分鐘只提示一次,當(dāng)然你也可以讓程序提示兩次或多次。只需更改“如果真 (變量1 10 0)”代碼,等于每間隔10秒 提示一次。按鈕F5運行程序,立刻會彈出錯誤信息,問題在哪里呢?原來“提示時間”數(shù)組變量的成員默認(rèn)是0,判斷提示時間1當(dāng)然出錯了。先把時鐘1的時鐘周期設(shè)為0,再“_按鈕1.被單擊”子程序中添加代碼,判斷分割后的提示時間數(shù)組的成員數(shù),如果等于2,就分配時鐘1的時鐘周期為1000,不等于2還設(shè)為0。如果 (取數(shù)組成員數(shù) (提示時間) 2)時鐘1.時鐘周期 1000時鐘1.時鐘周期 0動態(tài)賦予時鐘1的時鐘周期可以很好的節(jié)約系統(tǒng)資源。時鐘周期事件是經(jīng)常用到的即時判斷條件的事件,但一直會占用系統(tǒng)資源,不需要時時鐘周期最好設(shè)為0。按鈕F5運行程序,在提示文本后面編輯框輸入一段文字,“我愛易語言!”,輸入提示時間,格式為“小時:分鐘”,因為程序是分割“:”到提示時間數(shù)組,點擊“加入提示”按紐,程序到指定時間會談出提示的內(nèi)容。上面提示程序的原理就是輸入時間數(shù)字,以“:”分割出小時和分鐘與實際
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025江蘇揚州人才集團(tuán)下屬企業(yè)招聘6人筆試備考試題及答案詳解一套
- 2025江蘇揚州寶應(yīng)縣“鄉(xiāng)村振興青年人才”招聘67人筆試備考題庫及一套答案詳解
- 2025邯鄲武安市選聘農(nóng)村黨務(wù)(村務(wù))工作者180名筆試備考試題及完整答案詳解一套
- 2025年人教部編版語文四年級下冊第三次月考測試題(配有答案)
- 2025年河南省南陽市桐柏縣三模化學(xué)試題含答案
- 山西省呂梁市孝義市2024-2025學(xué)年高一上學(xué)期期中考試物理試題
- 江西省智慧上進(jìn)2024-2025學(xué)年高一上學(xué)期1月期末聯(lián)考物理試題(解析版)
- 陜西省安康市2023-2024學(xué)年高二下學(xué)期期末質(zhì)量聯(lián)考數(shù)學(xué)試卷(解析版)
- 慢性病管理與護(hù)理策略
- 妝前護(hù)膚 打造完美妝效的第一步
- DGJ08-102-2003 城鎮(zhèn)高壓、超高壓天然氣管道工程技術(shù)規(guī)程
- 北師大版數(shù)學(xué)一年級上冊第四單元分類測試卷含答案
- 線控轉(zhuǎn)向電機控制策略設(shè)計與仿真研究
- 會議效果評估模型構(gòu)建-深度研究
- 高炮廣告牌施工方案
- FIDIC標(biāo)準(zhǔn)合同范本
- 《核電廠實物保護(hù)系統(tǒng)定期試驗規(guī)范》
- 前列腺增生小講課
- 小型企業(yè)審計工作底稿指引(2021年修訂)使用說明
- 【MOOC】房地產(chǎn)管理-華中科技大學(xué) 中國大學(xué)慕課MOOC答案
- UL1047標(biāo)準(zhǔn)中文版-2020絕緣電力系統(tǒng)設(shè)備UL標(biāo)準(zhǔn)中文版
評論
0/150
提交評論