【文章內(nèi)容簡(jiǎn)介】
入A(1)中,然后進(jìn)行第二輪處理,將A(2)與其后的每個(gè)數(shù)進(jìn)行比較,若有數(shù)據(jù)比A(2)小,則交換兩數(shù)據(jù),按此道理依次類推,直至最后兩個(gè)數(shù)進(jìn)行比較,將較小數(shù)放在數(shù)組的倒數(shù)第二個(gè)元素中,將大數(shù)放在數(shù)組的最后一個(gè)元素中。程序設(shè)計(jì)步驟:① 定義一個(gè)數(shù)組A(n)② 把n個(gè)數(shù)據(jù)保存在數(shù)組中(利用循環(huán)完成)③ 對(duì)每個(gè)數(shù)據(jù)進(jìn)行比較排序處理(外循環(huán)控制總的比較輪數(shù),內(nèi)循環(huán)控制每輪的比較次數(shù);也有說(shuō)法是:外循環(huán)控制比較的兩個(gè)數(shù)中的第一個(gè)數(shù),內(nèi)循環(huán)控制比較的兩個(gè)數(shù)中的第二個(gè)數(shù))。④ 將排好序的數(shù)據(jù)輸出。(利用循環(huán)完成)二、典型程序范例例1:將N個(gè)由鍵盤輸入的數(shù)據(jù)按從小到大的順序排列起來(lái)10 INPUT “N=”;N20 DIM A(N)30 FOR I=1 TO N40 50 NEXT I60 FOR I=1 TO 70 FOR J= TO 80 IF THEN 90 NEXT J 100 NEXT I 備注:110 FOR I=1 TO N 有時(shí)為了減化程序,可省略110120 至130語(yǔ)句。添加如下語(yǔ)句:130 NEXT I 95 PRINT A(I);140 END 105 PRINT 另外,還可用記錄位置的方法來(lái)取每一輪中的最值,此輪比較完后,要將最該輪的最值放入相應(yīng)的數(shù)組元素中。(相應(yīng)程序見練習(xí))三、鞏固練習(xí)寫出下列程序的運(yùn)行結(jié)果5 DATA 52,46,13,48,95,62,78,92,63,5710 DIM A(10)20 FOR I=1 TO 1030 READ A(I)40 NEXT I50 FOR I=1 TO 1060 FOR J=1 TO 1070 IF A(I)A(J) THEN SWAP A(I),A(J)80 NEXT J,I90 FOR I= 1 TO 10100 PRINT A(I)110 NEXT I120 END將N個(gè)學(xué)生某科的成績(jī)排名次,按學(xué)號(hào)順序輸出學(xué)號(hào)、該科成績(jī)及名次10 INPUT “N=”,N20 DIM A(N),M(N)30 FOR I=1 TO N40 INPUT A(I)50 M(I)= 160 NEXT I70 FOR I=1 TO N80 FOR J=1 TO N90 IF THEN 100 NEXT J,I110 FOR I= 1 TO N120 PRINT I,A(I),M(I)130 NEXT I140 END用選擇交換法排序,請(qǐng)將程序補(bǔ)充完整10 DIM A(10)20 PRINT “Data before sorting:”30 FOR I=1 TO 1040 READ A(I):PRINT A(I);50 NEXT I60 DATA 123,96,42,39,22,14,7,4,0,770 PRINT80 FOR I= 90 K=I100 FOR J= 110 IF A(K)A(J)