[單項選擇題] 在窗體上畫—個名稱為Command1的命令按鈕,再畫兩個名稱分別為Label1、Label2的標(biāo)簽,然后編寫如下程序代碼: Private X
[單項選擇題] 在窗體上畫—個名稱為Command1的命令按鈕,再畫兩個名稱分別為Label1、Label2的標(biāo)簽,然后編寫如下程序代碼: Private X As Integer Private Sub Command1_Click() X=5:Y=3 Call proc(X,Y) Label1.Caption=X Label2.Caption=Y End Sub Private Sub proc(a As Integer,ByVal b As Integer)X=a*aY=b+b End Sub 程序運行后,單擊命令按鈕,則兩個標(biāo)簽中顯示的內(nèi)容分別是______。
A.25和3
B.5和3
C.25和6
D.5和6
正確答案:A
參考解析:[知識點] 窗體變量和參數(shù)傳遞[評析] 當(dāng)一個變量用Private關(guān)鍵字聲明后,本窗體模塊中的過程可以訪問它,但其他模塊的代碼不能訪問。在VB中,參數(shù)默認(rèn)是按地址傳遞(ByRef)的。所謂按地址傳遞(ByRef)參數(shù),就是使過程按照變量的內(nèi)存地址去訪問實際變量的內(nèi)容,在將變量傳遞給過程時,通過過程可永遠(yuǎn)改變變量值。按值傳遞(ByVal)參數(shù)時,傳遞的只是變量的副本。如果過程改變了這個值,則所作變動只影響副本而不會影響變量本身。本題中過程proc中的形參變量b前面有關(guān)鍵字ByVal,則該參數(shù)用傳值方式傳送,因此實參Y的值不會受到影響,保持不變。過程proc中的形參變量a前面沒有關(guān)鍵字,默認(rèn)的傳遞方式為傳址。形參a直接訪問實參X的地址,變量的a值為5。變量X為窗體變量,可用于該窗體內(nèi)的所有過程。過程proc直接引用窗體變量X,并將a*a的值賦于X,因此X的值為25。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。