第 1 頁:基本操作題 |
第 2 頁:簡單應用題 |
第 3 頁:綜合應用題 |
第 4 頁:參考答案 |
三、綜合應用題
【考點分析】本題考點有:Str()函數(shù)、“冒泡法”排序、For循環(huán)語句、If判斷語句以及文件操作。
【解題思路】str函數(shù)用于數(shù)值轉化為字符串,語法為:str(number)。
在循環(huán)語句中Step表示步長,可以為正數(shù),表示下一個變量加一個數(shù),也可以為負數(shù),則相反,在默認情況下,步長為1,就不需要使用Step特意標識。
“冒泡法”是一種重要的數(shù)據(jù)排序算法,它的核心思路是按順序讓一個數(shù)列中的每一個數(shù)都與它之后的所有的數(shù)逐一進行比較,如果該數(shù)大于其后面的數(shù),則把這兩個位置的數(shù)進行交換。通過這樣的循環(huán),最終按照從小到大的順序排列出該數(shù)列。從程序提供的代碼中可以看出,整型數(shù)組a的使用范圍是本窗體中的所有事件過程,用來存放從文件中讀取的數(shù)據(jù)。在排序中,使用雙重循環(huán),外循環(huán)每循環(huán)一次,確定內循環(huán)循環(huán)的次數(shù),內循環(huán)就是把本次循環(huán)中最大的數(shù),放在數(shù)組的最后面,這樣就可以實現(xiàn)對這50個數(shù)的升序排序。
【操作步驟】
步驟1:打開本題工程文件。
步驟2:打開代碼編輯窗口,去掉程序中的注釋符“´”,
將問號改為正確的內容,并編寫代碼。
參考答案(陰影部分是需考生填入的內容)
Dima(50)AsInteger
PrivateSubCl_Click()
DimkAsInteger,chAsString
Open"in5.dat"ForInputAs#1
ch=""
Fork=1T050
Input#1,__________將取出的數(shù)據(jù)存入數(shù)組a中
ch=ch+Str(a(k))+""´將數(shù)據(jù)存入ch
Nextk
Close#1
Textl.Text=__________'在Textl文本框中顯示文件內容
EndSub
PrivateSubC2click()
EndSub
PrivateSubC3-Click()
Open"out5.dat"ForOutputAs#1
Print#1,Text2.Text
Close#1
EndSub
需編寫的“排序”按鈕的代碼
PrivateSubC2_Click()
DimtAsInteger
DimiAsInteger
DimJAsInteger
DimchAsString
ch=""
Fori=50T02Step-1使用冒泡算法從小到大排序
ForJ=1To49
Ifa(J)>a(j+1)Then’兩兩比較
t=a(J+1)
a(j+1)=a(J)
a(j)=t
EndIf
NextJ
Nexti
ForJ=lT050´將排序后的數(shù)組重新賦給ch
ch=ch+Str(a(J))+""
Nextj
Text2.Text=ch
EndSub
步驟3:調試并運行程序,關閉程序后按題目要求存盤。
【易錯提示】注意冒泡排序的用法,理解位置交換的含義和方法,在交換時要有一個中間變量來起到傳遞的作用,否則會使其中一個值丟失而產生錯誤。
微信搜索"考試吧"獲取更多考試資訊、備考資料
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |