(一)順序查找數(shù)據(jù):我們假定被查找的數(shù)據(jù)存儲(chǔ)在有n個(gè)元素的數(shù)組變量d中,要尋找的一個(gè)特定的數(shù)據(jù)(這個(gè)數(shù)據(jù)稱(chēng)為查找鍵)已經(jīng)存儲(chǔ)在變量key中.
下面是順序查找算法的輸入輸出說(shuō)明.
輸入:查找鍵(設(shè)在變量key中). 被查找的數(shù)據(jù)(設(shè)在數(shù)組變量d中).
輸出:若找到,輸出值為key的數(shù)據(jù)所在的數(shù)組元素的下標(biāo),記為i;
若未找到,輸出結(jié)果為提示字符串:“找不到“.
當(dāng)在n=8個(gè)元素的數(shù)組里順序查找數(shù)據(jù)的示意圖如下:

總結(jié)順序查找數(shù)據(jù)結(jié)果判斷條件:
(1)當(dāng)找到時(shí),肯定i<=8,n個(gè)數(shù)據(jù)時(shí),肯定i<=n,i即為找到的數(shù)組元素下標(biāo),d(i)=key;
(2)當(dāng)“找不到“時(shí),i=9>8了;n個(gè)數(shù)據(jù)時(shí),當(dāng)i=n+1時(shí),表示“找不到“.
順序查找的主程序段如下:
Private Sub 順序查找_Click( ?。?br />n個(gè)數(shù)據(jù)放入d(1)到d(n)中
Key=Val(Text1.Text):i=1‘變量Key從文本框Text1取的數(shù)要查找的數(shù);
Do While ①
i=i+1
Loop
If i<=n Then
Text2.Text=“在d(“+Str(i)+“)中“‘例如在文本框Text2顯示:“在d(6)中”
Else
Text2.Text=“找不到“
End If
End Sub
以上程序Do While的條件 ①是CC
(A)Key<>d(i) (B)i<=n
(C))Key<>d(i) And i<=n (D)Key<>d(i) or i<=n.
【考點(diǎn)】查找算法及其程序?qū)崿F(xiàn).
【答案】C
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書(shū)面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/12/11 21:0:1組卷:19引用:3難度:0.5
相似題
-
1.某對(duì)分查找算法的VB程序段如下:
數(shù)組元素a(1)到a(10)的值依次為“12,15,18,20,25,39,47,88,90,99”,經(jīng)過(guò)上述代碼查找后,下列表達(dá)式正確的是( ?。?/h2>發(fā)布:2024/12/20 16:0:2組卷:5引用:2難度:0.5 -
2.某數(shù)組d中的數(shù)據(jù)依次是[8,12,15,28,28,32,36,39],要查找某個(gè)元素是否在數(shù)組中,下列說(shuō)法正確的是( ?。?/h2>
發(fā)布:2024/12/20 0:0:1組卷:3引用:1難度:0.7 -
3.有如下對(duì)分查找VB程序段:
若數(shù)組元素a(1)~a(10)的值依次為“5,9,13,18,22,27,31,39,40,44”,運(yùn)行程序后,文本
框Text2中顯示的內(nèi)容為3,則輸入的key值不可能為( ?。?/h2>發(fā)布:2024/12/20 20:0:2組卷:3引用:2難度:0.4