初中第二冊《信息技術(shù)》教材說明及教學(xué)參考
程序的模塊化思想是指:將程序的整個任務(wù),分割成多個程序塊,每個程序塊具有獨(dú)立的功能,使得程序的整體結(jié)構(gòu)清晰、明了,便于調(diào)試與熔接。這些程序塊稱為子程序。其調(diào)用它的程序稱為主程序。完成某項(xiàng)功能,離不開主程序和子程序,二者缺一不可。
主程序與子程序調(diào)用關(guān)系一般如圖所示(圖中數(shù)字指明了程序流程):
過程和函數(shù):都是在程序模塊化思想下產(chǎn)生的。過程有標(biāo)準(zhǔn)過程和自定義過程,函數(shù)有標(biāo)準(zhǔn)函數(shù)和自定義函數(shù),所謂“標(biāo)準(zhǔn)”就是程序語言本身提供的,比如sub過程,在素材中提供了《vb常用函數(shù)》,可以參閱;所謂“自定義”,就是用戶通過編寫程序來自行定義的過程或函數(shù)。不論是程序提供的過程與函數(shù),還是用戶定義好的,都可以調(diào)用。
調(diào)用時,過程在語法上相當(dāng)于一個語句,可以直接寫下“過程名(參數(shù))”即可;而函數(shù)由于在語法上相當(dāng)于一個表達(dá)式,所以,函數(shù)不能獨(dú)立作為一個語句被調(diào)用,但是它可以出現(xiàn)在任何表達(dá)式可以出現(xiàn)的地方。
活動:求解兩個整數(shù)階乘的和
在程序中,將sub...end sub定義的子程序稱為過程。過程是以sub開頭,以end sub結(jié)束的一段程序,在這兩句之間是語句塊,稱為“過程體”或“子程序體”。教材中以定義compute的sub過程為例,提供了兩種添加過程的方法:一種是直接在窗體的代碼窗口中鍵入;一種是選擇“工具——添加過程”。
附:選擇“工具——添加過程”:
1.格式:
[private | public] [static] sub <過程名> ([形參表])
語句組(過程體)
end sub
2.說明:
①若沒有指定private等關(guān)鍵字,則默認(rèn)的是public;即在其它模塊中也能調(diào)用此過程;
②由static定義后,過程體中所有的局部變量都相當(dāng)于靜態(tài)變量;
③過程名的長度不超過40個字符,命名規(guī)則與變量名的命名規(guī)則相同;
④要提前退出sub可用exit sub。
⑤使用“添加過程”對話框建立過程的首尾兩行!
方法:進(jìn)入代碼窗口后打開“工具”菜單中的“添加過程”對話框。
sub過程的語法結(jié)構(gòu),在教材中作了詳細(xì)介紹,下面是sub過程的一個實(shí)例:當(dāng)使用不同的參數(shù)值調(diào)用此過程,會出現(xiàn)不同的消息框。
private sub msg(a as integer)
sname = "超越系統(tǒng)"
select case a
case 1
msgbox "數(shù)據(jù)錯誤,請注意!", vbokonly + vbinformation, sname + "報錯"
case 2
msgbox "是否繼續(xù)?", vbyesno + vbquestion, sname + "提問"
end select
end sub
活動:編寫整數(shù)求和程序
函數(shù)與sub過程一樣,定義一個函數(shù)后,調(diào)用該函數(shù),即可實(shí)現(xiàn)其功能。
調(diào)用sub過程
創(chuàng)建好sub過程后,需要調(diào)用才能實(shí)現(xiàn)其功能。教材中提供了兩種調(diào)用過程的方法,其一是把過程名作為一個語句來使用;其二是使用call語句調(diào)用。
1.把過程名作為一個語句來使用:
格式:過程名 [實(shí)際參數(shù)]
說明:在這種格式中,參數(shù)不能使用括號,過程名和參數(shù)之間為空格分隔,參數(shù)和參數(shù)之間使用逗號分隔,如果過程沒有參數(shù),則不需要參數(shù)。
例如:調(diào)用上面msg過程
private sub command1_click()
msg 1
end sub
2.用call語句調(diào)用sub過程
格式:call 過程名 [(實(shí)際參數(shù))]
說明:如果過程沒有參數(shù),則參數(shù)和括號可以省略。
例如:調(diào)用上面msg過程