当前位置:手动组卷 /高中信息技术 /按章节
最新上传 最多使用
  • 1.  小南设计了一个用于判定素单词的Python程序。判断素单词的规则如下:

    Ⅰ.设定小写字母a—z对应的数字为1—26,大写字母A—Z对应的数字为27—52。

    Ⅱ.将某个单词的所有字母按照其对应的数字求和,

    Ⅲ.若和为素数(质数)则判断为素单词,否则不是。

    如单词“Hello”,字母分别对应的数字为:34、5、12、12、15,其和为34+5+12+12+15=78,不是素数,因此单词“Hello”不是素单词。

    1. (1) 根据题意,当输入单词“Love”,输出的结果是(填字母:A .Love是素单词/B .Love不是素单词)
    2. (2) 实现素单词判断的python程序如下,请在划线处填入合适代码。

      def is_Prime(number):#判断number是否为素数

      flag=True

      for k in range(2,number):

       if :

       flag=False

       break

      return flag

      s=input("请输入一个单词:")

      total=0

      for i in range(len(s)):

       ch=s[i]

       if "A"<=ch<="Z":

       total=

       elif "a"<=ch<="z":

      #将小写字母转换为对应的数字并累加至变量total中,代码略

      if 

       print(s,"是素单词")

      else:

       print(s,"不是素单词")

  • 1. 在计算机的操作系统中,经常需要给应用程序“分配内存”和“释放内存”。若有大小为1024B的内存,如1图所示:

    使用列表["+",5]表示申请连续5B的内存,使用列表[2,2]表示回收位置2开始连续2B的内存。若指令集表示为:order=[["+",5],[2,2],["+",8],[8,3]]。随着指令集被执行,1024B连续的内存块会被分割成若干个占用内存空闲内存。为方便起见,“占用内存”用1表示,“空闲内存”用0表示,故执行上述指令集后,内存占用情况如2图所示:

    若将空闲块用链表组织起来,就可以快速查找空闲块和删除空闲块。把连续的空闲块定义为一个节点,每个节点由[空闲块起点, 空闲块长度, 下一个空闲块位置]三部分内容构成。根据2图内存占用情况,创建的空闲块链表如3图所示:

    1. (1) 根据2图所示的内存占用情况,执行指令[4,4]后(连续空闲块要合并),内存中“空闲块”的数量变为个。
    2. (2) 根据内存占用情况列表allot,创建空闲块链表代码如下:

      def linkList(allot): #linkList函数功能:根据内存占用0/1列表allot,创建空闲块链表link

       link = [ [-1,-1,-1] ] #链表包含一个空头节点

       head = tail = 0 ; n = len( allot ) ; i = 0

       while i < n :

       if allot[ i ] == 0 :

       j = i + 1

       while j<n and allot[ j ] == 0: 

       j = j + 1

       link.append( [ i , j – i , -1 ] )

       link[ tail ][ 2 ] =     ▲

       tail = len( link ) - 1

                  

       else:

       i += 1

      return head , link

      请在▲处填入合适的代码

      若将加框处的代码修改为i = j,是否影响程序的执行结果(选填:是/否)。

    3. (3) 模拟上述内存操作的Python程序如下,请在划线处填入合适的代码。

      #通过文件读入内存分配表allot和指令集order,其代码略。

      head , link = linkList ( allot )

      for i in range( len( order ) ):

       if order[ i ][ 0 ] == " + ": #必须分配连续的空闲块,且由第一个满足空间大小的节点分配

       p = head ; q = link[ head ][ 2 ]

       while 

       p = q ; q = link[ q ][ 2 ]

       if  q == -1:

       print( "内存不足!" )

       else:

       if link[q][1] == order[i][1]: 

                      

       else:

       link[ q ][ 0 ] = link[ q ][ 0 ] + order[ i ][ 1 ]

       link[ q ][ 1 ] = link[ q ][ 1 ] - order[ i ][ 1 ]

       else:

       p = head ;  q = link[ head ][ 2 ]

       while q != -1 and link[ q ][ 0 ]<order[ i ][ 0 ]:

       p = q ; q = link[ q ][ 2 ]

       if link[ p ][ 0 ] + link[ p ][ 1 ] == order[ i ][ 0 ]: #前面节点合并

       link[ p ][ 1 ] = link[ p ][ 1 ] + order[ i ][ 1 ]

       else:

       link.append([ order[ i ][ 0 ] , order[ i ][ 1 ] , q]) #添加节点

       link[ p ][ 2 ] = len( link ) - 1

                  p = link[ p ][ 2 ]

         if q != -1 and : #后面节点合并

       link[ p ][ 1 ] = link[ p ][ 1 ] + link[ q ][ 1 ]

       link[ p ][ 2 ] = link[ q ][ 2 ]

  • 1. 某校为了支持学生的学习进步,特设补弱支持,每位学生可以根据自身学习情况,从语数英物化生政史地技这10门科目中,选择不超过两门科目作为自己的补弱科目,这些选择的数据已存储于"student.xlsx"文件中,部分数据如1图所示:

    1图

    2图

    1. (1) 首先,需要对数据进行整理,筛选出那些补弱科目数不符合学校规定(超出两门)的学生记录,以便通知他们重新选择补弱科目,Python程序如下:

      import pandas as pd

      import matplotlib.pyplot as plt

      plt.rcParams['font.sans-serif'] = ['KaiTi','SimHei','FangSong'] #设置中文字体

      df = pd.read_excel( "student.xlsx" )

      df_err = df[    ▲    ]

      请在▲处填入合适的代码

    2. (2) 数据整理并修正后,分析各班各科目的选择人数,以及各科目选择人数占总人数比例。

      km = ["语文","数学","英语","物理","化学","生物","政治","历史","地理","技术"]

      df1 = df . groupby( "班级" ) . 

      print( df1 ) #2图所示

      #删除“姓名”和“科目数”列

      df2 = df1 . drop(["姓名","科目数"] , axis = 1)

      g = df2 . sum() #g为Series对象

      #统计各科目的人数占总人数的比例

      for k in km:

       per = / len( df ) * 100

      print(k , "比例为:" , round(per,2) , "%") 

      x = 

      y = g . values

      plt.bar( x , y ) #3图所示

      plt.title("各科补弱比例对比") 

      plt.show()

  • 1.  有如下 Python程序段:

    import random

    a=[0]*6

    for i in range(6):

     a[i]=random.randint(1,10) #随机生成 1到 10范围内的整数

    for i in range(5):

     if i%2==0 and a[i]>a[i+1]:

     a[i],a[i+1]=a[i+1],a[i]

     else:

     a[i]+=1

    print(a)

    执行该程序段后,a的值可能的是(   )

    A . [11,11,7,9,3,9] B . [6,2,8,10,5,9] C . [6,9,3,7,8,12] D . [3,9,0,8,2,7]
  • 1.  有如下Python程序段:

    s="78.166.97.89."

    n=len(s);c="";max=""

    for i in range(n):

     if "0"<=s[i]<="9":

     c=s[i]+c

     else:

     if c>max:

     max=c

     c=""

    print(max)

    执行该程序后,输出的结果是(   )

    A . 166 B . 98 C . 97 D . 87
  • 1.  有如下 Python程序段:

    if x>y:

     f=False

    else:

     f=True

    下列语句中与上述程序段功能相同的是(   )

    A . f=x>y B . f=x>=y C . f=x<y D . f=x<=y
  • 1.  某加密算法要求如下:

    ①小写英文字符按照英文字母“a”“b”……“y”“z”的排列顺序,取其前一个小写英文字符作为密文进行重组;

    ②规定小写英文字符“a”的前一个密文小写英文字符是“z”;

    ③其他字符按原字符连接;

    例如:明文“My@class”加密后的密文是“Mx@bkzrr”。

    实现上述功能的 Python 程序代码如下:

    s = input("请输入明文:")

    ans = ""

    for i in ①____:

        

    print("密文结果为:", ans)

    1. (1) 运行代码,输入明文为:“LoongYear!”,则密文结果为:
    2. (2) 请在程序划线处填入合适代码。
    3. (3) 下列选项能替代虚线框部分,实现相同功能的是(单选,填字母)。

      A.

      if "a"<=i<="z":

          ans+=chr(ord(i)-1)

      else:

          ans+=i

      B.

      if "a"<=i<="z":

          ans+=chr((ord(i)-ord("a")+25)%26+ord("a"))

      else:

          else:

              ans+=i

      C.

      if "a"<=i<="z":

          ans+=chr((ord(i)-1)%26)

      else:

          ans+=i

      D.

      if "a"<=i<="z":

          ans+=chr((ord(i)-ord("a")+25)%26+ord("i"))

      else:

          ans+=i

  • 1.  有如下 Python 程序段:

    s = ['12','22','23','31','123','224']

    res =s[0]

    for i in range(1,len(s)):

        if s[i] >= res:

            res =s[i]

    print(res)

    执行上述程序后,输出的结果是(   )

    A . 12 B . 123  C . 31 D . 224
  • 1.  用python算法控制结构描述“如果报名人数超过10人则输出活动升级,若小于3人则输出活动取消,否则输出活动正常举行”,设t为报名人数,下列选项正确的是(    )
    A . B . C . D .
  • 1.  某APP为鼓励用户积极签到,制定积分签到政策,用户第一次连续签到可以得到1分,第二次连续签到得2分,第三次连续签到得到4分,接下来,每次得分分别为8,16,32……。若签到中断,则前面签到所得积分清空,重新从第一天开始积分。当用户积分达到10000分时,可以兑换相应奖品,小明想得到的毛绒娃娃需要20000积分,请设计算法帮小明计算,需要至少连续签到多少天才能拿到毛绒娃娃。
    1. (1) “确定用变量day表示需要花费的时间,用jf表示当前签到可以获得几分,用sum_jf表示目前已经累计获得的积分,并得出解决问题的计算模型。”,该过程属于用算法解决问题中的(   )
    2. (2) 解决此问题的算法流程图如图所示,请为虚线框选择合适的流程图基本图形并为①处选择合适代码(   )

1 2 3 4 5 下一页 共1000页