試卷征集
          加入會員
          操作視頻

          用一個6*5矩陣表示地圖,分別用a數組元素表示,第1行從左到右為a(1)到a(6),依此類推,右下角為a(30)。其中數字0表示不通,數字1表示暢通?,F在要從左上角到右下角尋找一條暢通的路徑。線路規則如下:
          ?路線每個點只能向右或向下
          ?任何一個岔口優先向右走,右側不通再向下走
          ?一條路線中每個點只能走一次,不能重復
          算法思路:探路過程中,記錄每個坐標到數組lu;遇到岔路口(向右向下都通),則記錄路口坐標到數組cha;遇到前方無路時,需要返回到上一個路口,標記路口右側坐標為0;當前方無路,岔路口數組也退回到0,說明整體不通,否則根據規則走到右下為止,最后輸出整體線路坐標。
          實現算法的程序如下,運行結果如右圖所示。
          回答下列問題:
          (1)根據規則,如圖迷宮矩陣正確路線的第6個點是a數組的第
          21
          21
          個元素(填數字)
          (2)在程序橫線處填上合適代碼,使程序完整。

          Dim a(1 To 50)As Integer
          Private Sub Command1_Click (  )
          Dim i As Integer,j As Integer,pos As Integer
          Dim cha(1 To 10)As Integer'記錄一條線路中各個岔路口坐標
          Dim lu(1 To 10)As Integer'記錄路線經過的坐標
          pos=1:j=0:lu(1)=1:i=1
          Do While i<=9‘第1個和最后1個固定,中間有9個需要路過的坐標
          If pos Mod 6<>0 And a(zb+1)=1 Then'向右暢通
          If pos+6<=30 and a(zb+6)=1 Then‘記錄岔路口
          j=j+1
          cha(j)=pos
          cha(j)=pos

          End If
          pos=pos+1
          i=i+1
          lu(i)=pos
          lu(i)=pos

          ElseIf pos+6<=30 And a(pos+6)=1 Then'向下暢通
          pos=pos+6
          i=i+1
          lu(i)=pos
          Else'坐標退回到上一個岔路口
          If j=0 Then Exit Do
          Do While lu(i)<>cha(j)
          i=i-1
          i=i-1

          Loop
          a(cha(j)+1)=0’標記此路口右側不可用
          pos=cha(j)
          j=j-1
          End If
          Loop
          If j=0 Then
          Text1.Text=“沒有暢通道路“
          Else
          For i=1 To 10
          Text1.Text=Text1.Text+Str(lu(i))
          Next i
          End If
          End Sub

          【答案】21;cha(j)=pos;lu(i)=pos;i=i-1
          【解答】
          【點評】
          聲明:本試題解析著作權屬菁優網所有,未經書面同意,不得復制發布。
          發布:2024/6/27 10:35:59組卷:0引用:1難度:0.9
          相似題
          • 1.一球從100米高度自由落下,每次落地后反跳回原高度的一半,再下落。編寫一個C程序,求它在第10次落地時,其經過了多少米?第10次反彈多高?

            發布:2025/1/2 11:0:1組卷:1引用:3難度:0.3
          • 2.根據AQI值判斷城市的空氣質量。若城市的AQI值(整數)不超過100則空氣質量優良,否則空氣質量有污染。當輸入的AQI值為-1時則退出程序。不要更改程序結構,將題中的①②③④填入正確的語句。
            city=input(“請輸入城市名:”)
            AQI=int(input(“請輸入空氣質量指數AQI的值:”))
            ①______ AQI!=-1:
            if ②______:
            print(city,“的空氣質量優良。”)
            ③______:
            print(city,“的空氣質量有污染?!保?br />city=input(“請輸入城市名:”)
            AQI=④(input(“請輸入空氣質量指數AQI的值:”))
            (1)序號①答案為
             
            。
            A.if
            B.while
            C.for
            D.def
            (2)序號②答案為
             
            。
            A.AQI>=100
            B.AQI<=100
            C.AQI>100
            D.AQI<100
            (3)序號③答案為
             
            。
            A.elif
            B.break
            C.if
            D.else
            (4)序號④答案為
             
            。
            A.int
            B.float
            C.str
            D.else

            發布:2025/1/2 11:0:1組卷:0引用:0難度:0.4
          • 3.利用海倫公式求解三角形面積。已知a,b,c為三角形的三條邊長,p為三角形的半周長,即p=(a+b+c)/2,計算此三角形面積S的海倫公式為:。不要更改程序結構,將題中的①②③填入正確的語句。
            import math#導入數學模塊
            def hl(a,b,c):#定義求三角形面積的函數
            p=①
            s=math.jye.ai(②)#sqrt用于計算算術平方根
            return ③#返回面積的值
            a,b,c=3,4,5#邊長依次賦值
            print(“此三角形的面積S為:“,hl(a,b,c))
            (1)序號①答案為
             

            A. (a+b+c)/2                              B.p*(p-a)*(p-b)*(p-c)
            C. (a+b+c)*2                              D.s
            (2)序號②答案為
             

            A.(a+b+c)/2                              B.p*(p-a)*(p-b)*(p-c)
            C.(a+b+c)*2                                D.(3+4+5)/2
            (3)序號③答案為
             

            A.p                                          B.s
            C.p*(p-a)*(p-b)*(p-c)                  D.0

            發布:2025/1/2 11:0:1組卷:0引用:0難度:0.4
          APP開發者:深圳市菁優智慧教育股份有限公司| 應用名稱:菁優網 | 應用版本:5.0.7 |隱私協議|第三方SDK|用戶服務條款
          本網部分資源來源于會員上傳,除本網組織的資源外,版權歸原作者所有,如有侵犯版權,請立刻和本網聯系并提供證據,本網將在三個工作日內改正