试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:困难

浙江省绍兴市海亮高级中学2020-2021学年高一下学期信息技术期中考试试卷

小金同学学完了进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金突发奇想,能不能用python程序来完成这些作业呢?请帮小金完成代码编程.

def convert(s):

    m=0

    le=len(s)

    key=s[le-1]

    if key=="B":

        n=2

    elif key=="D":

            ①   

    else:

        n=16

    i=0

    while i<=le-2:

        c=s[le-1-i]

        if c>="0"and c<="9":

            a=ord(c)-ord("0")

        elif c>="A"and c<="F":

            a=ord(c)-ord("A")+10

           ②    

        i+=1

    return m

s=input("请输入算式")

result=0;suanfu1="";suanfu2="";s1=""

for i in range(len(s)):

    c=s[i]

    if c=="+" or c=="-" or c=="=":

            ③  

        suanfu1=suanfu2

        suanfu2=c

        if suanfu1=="":

            result=t

        if suanfu1=="+":

            result=result+t

        if suanfu1=="-":

            result=result-t

        s1=""

    else:

        s1=s1+c

print("计算结果为"+str(result)+"D")

(1)、将程序横线处补充完整

 ② ③ 

(2)、如输入“1110B+10D-30H=”则输出结果为
举一反三
【加试题】小明编写了一个VB应用程序,用于统计英文字母的个数,当用户输入一行英文语句,可以统计其中每个字母出现的次数。程序运行时界面如图所示。

程序运行时,在Text1中输入字符串,单击“开始统计”按钮,在List1中显示统计结果。函数IsLetter(x)功能,若x是字母,则返回值为字母x在字母序列“A”~“Z”中的序号,如字母“A”的序号为0,字母“D”的序号为3。若x不是字母,则返回值为-1。

Function IsLetter(x As String) As Integer

        If "A" <= x And x <= "Z" Then

            IsLetter = Asc(x) - Asc("A")

        ElseIf "a" <= x And x <= "z" Then

            IsLetter = Asc(x) - Asc("a")

        Else

                       ①        

        End If

    End Function

    Private Sub Command1_Click()

        Dim d(25) As Integer, m As Integer, n As Integer

        Dim s As String, c As String

        List1.Clear

        For m = 0 To 25                  '初始化数组d

            d(m) = 0

        Next m

        s = Text1.Text

        For m = 1 To Len(s)              '读取字符串中的字符进行判断

            c = Mid(s, m, 1)

            n = IsLetter(c)

            If n <> -1 Then    ②  

        Next m

        For m = 0 To 25                  '输出结果

            If    ③   Then

               List1.AddItem (Chr(m + Asc("a")) & ":" & d(m))

            End If

        Next m

   End Sub

回答下列问题:

【加试题】小明编写了一个输出十进制与二进制数对应表的VB程序。程序运行时,单击“输出”按钮Command1后,在列表框List1中输出运行结果如图所示。实现上述功能的VB代码如下,但横线处代码有错,请改正。

Dim b(4) As Integer         '数组b按位存储二进制数,数组类型为整型,元素个数为4个

Private Sub pprint(m As Integer) 

'本过程打印输出一行十进制数m和对应的二进制数

'代码略

End Sub

Private Sub Command1_Click()

  Dim i As Integer, j As Integer                                        

  List1.Clear                                                               

  List1.AddItem "十进制数      二进制数"                          

  For i = 1 To 4                                          

      b(i) = 0                                                   

  Next i

  For i = 0 To 15                                    

      Call pprint(i)                                    

      j =   1                '(1)         

      b(j) = b(j) + 1                  

      Do While  b(j) = 0     '(2)  

         b(j) = 0                            

         j = j - 1                          

         b(j) = b(j) + 1              

      Loop                                  

  Next i                                

End Sub

⑴{#blank#}1{#/blank#} ⑵{#blank#}2{#/blank#} 

返回首页

试题篮