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

          猜數字是一種古老的密碼破譯類益智小游戲.通常由兩個人玩,也可以由一個人和電腦玩,其標準規則為:
          1)一方出數字,出數字的人要想好一個無重復數字的4位數(如0165,5234等),不能讓猜的人知道;
          2)另一方猜數字,每猜一個數字,出數者根據結果給出“幾A幾B的提示”,其中A前面的數字表示位置正確的數字個數,而B前面的數字表示數字正確但位置不對的數字個數.(如要猜5234,猜的人給出5346,則提示1A2B);
          3)重復第二步的猜測過程,直到猜中(即提示4A0B)為止.
          小林編寫了一個和電腦猜數字的VB程序,其功能如下:窗體加載時,調用自定義函數產生待猜的4位數字,并初始化猜測次數.用戶在文本框Text1中輸入猜的數字,單擊“我猜”按鈕Command1,程序進行判斷,并將結果顯示在列表框List1中.猜中后,在標簽框Label2中根據猜測次數給出評語.程序運行效果如1圖所示.
          (1)實現上述功能的VB程序如下,請在橫線處填入合適代碼.
          Dim result As String,total As Integer
          Dim flag(0 to 9)As Boolean'標記下標對應的數字是否存在,初值默認為False
          Private Sub Form_Load(  )
               result=
          ①RndCode(4)
          ①RndCode(4)

               total=0
          End Sub
          Private Sub Command1_Click(  )
               Dim A As Integer,B As Integer
               Dim C As Integer'變量C存儲數字正確(含位置正確)的數字個數
               Dim guess As String,i As Integer,t1 As String,t2 As String
               guess=Text1.Text
               A=0:C=0
               For i=1 To 4
                     t1=Mid(result,i,1)
                     t2=Mid(guess,i,1)
                     If t1=t2 Then A=A+1
                     If
          ②flag(val(t2)=true或 flag(val(t2)) 或 flag(t2)=true 或 flag(t2)
          ②flag(val(t2)=true或 flag(val(t2)) 或 flag(t2)=true 或 flag(t2)
           Then C=C+1
               Next i
               total=total+1
               B=
          ③C-A
          ③C-A

               List1.AddItem Str(total) &““& guess &““& Str(A) &“A“& Str(B) &“B“
               If A=4 Then
                     If total<=8 Then
                         Label2.Caption=“太厲害了!您只用了“& total &“次.“
                     Else
                         Label2.Caption=“繼續鍛煉!您共花了“& total &“次.“
                     End If
               End If
          End Sub
          'RndCode 函數用于隨機產生待猜測的n位不重復數字字符
          Function RndCode(n As Integer) As String
               Dim x As Integer,i As Integer
               Randomize
               num=0:RndCode=““
               Do While num<n
                    x=Int(Rnd*10)'隨機產生一個[0,9]的數字
                    If flag(x)=False Then
                          flag(x)=True
                          num=num+1
                          RndCode=RndCode & x
                     End If
               Loop
          End Function
          (2)如果某次游戲過程如2圖所示,那么第7次要猜測成功,應輸入
          D
          D
          (單選,填字母:A.6321      B.6312  C.2531  D.2513).

          【答案】①RndCode(4);②flag(val(t2)=true或 flag(val(t2)) 或 flag(t2)=true 或 flag(t2);③C-A;D
          【解答】
          【點評】
          聲明:本試題解析著作權屬菁優網所有,未經書面同意,不得復制發布。
          發布:2024/6/27 10:35:59組卷:3引用:1難度:0.1
          相似題
          • 1.根據AQI值判斷城市的空氣質量。若城市的AQI值(整數)不超過100則空氣質量優良,否則空氣質量有污染。當輸入的AQI值為-1時則退出程序。不要更改程序結構,將題中的①②③④填入正確的語句。
            city=input(“請輸入城市名:”)
            AQI=int(input(“請輸入空氣質量指數AQI的值:”))
            ①______ AQI!=-1:
            if ②______:
            print(city,“的空氣質量優良。”)
            ③______:
            print(city,“的空氣質量有污染。”)
            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
          • 2.一球從100米高度自由落下,每次落地后反跳回原高度的一半,再下落。編寫一個C程序,求它在第10次落地時,其經過了多少米?第10次反彈多高?

            發布:2025/1/2 11:0:1組卷:1引用:3難度:0.3
          • 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|用戶服務條款
          本網部分資源來源于會員上傳,除本網組織的資源外,版權歸原作者所有,如有侵犯版權,請立刻和本網聯系并提供證據,本網將在三個工作日內改正