第 1 頁:基本操作題 |
第 3 頁:簡單應用題 |
第 5 頁:綜合應用題 |
6在考生文件夾下有工程文件sj5.vbp及窗體文件sj5.frm,該程序是不完整的,請在有"?"的地方填入正確內(nèi)容,然后刪除"?"及代碼前的所有注釋符(即'號),但不能修改其他部分。存盤時不得改變文件名和文件夾,相應的dat文件也保存到考生文件夾下,否則沒有成績。
本題描述如下:
在名稱為Form1的窗體上有一Label控件和兩個命令按鈕,數(shù)據(jù)文件in5.dat存放了一些成績。按 "開始"按鈕后,從考生文件夾下的in5.dat中讀出數(shù)據(jù)并求出它們的總分和平均分,將結果寫入考生文件夾下的out5.dat文件中;程序運行界面如圖46-5所示。執(zhí)行完畢,"開始"按鈕變成"完成",且無效(變灰)。
圖46-5
參考解析:
命令按鈕的標題由Caption屬性來設置,單擊命令按鈕觸發(fā)Click事件;執(zhí)行完畢,“開始”按鈕變成“完成”,且無效(變灰) ;Open "in5.dat" For Input As #1以只讀方式打開文件,讀出數(shù)據(jù);程序中用到的Input讀文件的格式為:Input #文件號,變量列表,在將數(shù)據(jù)寫入文件時,要使用Write # 語句而不是使用Print #語句,因為Write #語句能夠將各個數(shù)據(jù)項正確的區(qū)分開。
根據(jù)題意,將一個標簽和兩個命令按鈕添加到窗體中,標簽的Caption屬性為“從考生文件夾下的in5.dat中讀出數(shù)據(jù)并求出它們的總分和平均分,將結果寫入考生文件夾下的out5.dat文件中”,命令按鈕的名稱分別為Command1和Command2、Caption屬性分別為“開始”和”關閉”。雙擊Command1進入代碼編寫窗口,利用EOF來判斷是否讀完數(shù)據(jù),利用計數(shù)記錄讀取數(shù)據(jù)的個數(shù),補充后的具體代碼如下:
Private Sub Command1_Click() '開始命令
Dim total As Long
Dim temp As Integer
Dim str As String
Dim num As Integer
total = 0
num = 0
Open App.Path&"\in5.dat" For Input As #1 '打開文件進行讀取
While EOF(1) = False '如果沒讀到文件尾繼續(xù)讀取
Input #1, str
temp = Val(str) '將讀到的字符串轉換成數(shù)值
total = total + temp '進行累加
num = num + 1 '計數(shù)加1
Wend
Close #1
Open App.Path&"\out5.dat" For Output As #2 '打開文件,進行寫入
Writ e #2, "總和是"
Write #2, total '寫入總和
Write #2, "平均值是"
Write #2, total \ num '寫入平均值
Command1.Enabled = False '計算完成后Command1不可用
Command1.Caption = "完成" 'Command1的名稱變?yōu)橥瓿?/P>
End Sub
Private Sub Command2_Click() '關閉命令
Unload Me
End Sub
單擊按鈕運行程序,并按要求保存。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |