浙江省丽水市2021-2022学年高二上学期信息技术普通高中教学质量监控试题试卷

试卷更新日期:2022-02-28 类型:期末考试

一、选择题(本大题共12小题,每小题2分,共24分。)

  • 1. 下列有关数据、信息和知识的说法,错误的是(     )
    A、信息是数据经过存储、分析及解释后所产生的意义 B、面对同样的信息,不同的人会因理解不同,形成不同的知识 C、与物质、能源相同的是,信息会因为被别人获取而发生损耗 D、人类可以通过了解信息来认识自然,利用信息进行发明创造
  • 2. 下列有关大数据及其处理的说法,错误的是(     )
    A、大数据的四个特征:数据规模大、处理速度快、数据类型多、价值密度低 B、对大数据进行处理时,必须保证每个数据都准确无误 C、批处理计算适合处理静态数据 D、流计算适合处理实时更新的数据
  • 3. 下列应用领域中不属于人工智能应用的是(     )
    A、人机博弈 B、机器视觉 C、自然语言处理 D、扫描仪扫描试卷
  • 4. 使用UltraEdit软件观察字符“我爱 Python!”的内码,部分界面如图所示

    下列说法正确的是(     )

    A、字符“!”的内码占两个字节 B、字符“爱”的十六进制编码是“AE 20” C、字符“h”的二进制编码是“01101000” D、字符“ON”的十六进制编码是“6F 6E”
  • 5. 某双声道Wave格式的音频文件,其采样频率为44.1kHz,量化位数为2字节,时长为10秒,则其存储空间约为(     )
    A、861KB B、1.68MB C、6.9MB D、215KB
  • 6. 某算法的部分流程图如图所示。执行这部分流程后,输出s,i的值为(     )

    A、45,6 B、45,7 C、63,6 D、63,7
  • 7. 下列Python表达式的值等于56的是(     )
    A、abs(-55)+1 B、ord("A") C、len("55")+1 D、chr(56)
  • 8. 有如下Python程序段:

    a=int(input("请输入一个数:"))

    if a>0:

      a=a%10

    elif a==0:

      a=a+1

    else:

      a=a**2

      a=a+10

    print(a)

    输入a值为20,执行该程序段后,输出的结果是(     )

    A、14 B、11 C、10 D、1
  • 9. 有如下Python程序段:

    ma=a[0];mb=a[0];pa=0;pb=0

    for i in range(1,10):

        if ma < a[i]:ma = a[i];pa=i

        if mb > a[i]:mb = a[i];pb=i

    下列关于该程序段功能描述正确的是(     )

    A、变量pa存储a[0]至a[9]中的最大值 B、变量ma存储a[0]至a[9]中的最小值 C、变量pb存储a[0]至a[9]中的最大值 D、变量mb存储a[0]至a[9]中的最小值
  • 10. 采用选择排序算法对数据序列“12,23,24,15,11,10”完成升序排序,则需要交换的次数为(     )
    A、3 次 B、4 次 C、5次 D、6 次
  • 11. 有如下Python程序段

    def s(x):

        if x<=2:

            y=x

        else:

            y=s(x-1)+s(x-2)

        return y

    a=int(input("请输入正整数:"))

    result=s(a)

    print(result)

    运行程序,输入值为6,则输出结果为(     )

    A、8 B、9 C、13 D、14
  • 12. 某对分查找算法的Python程序段如下:

    key=int(input("请输入待查数据值:"))

    d=[17,18,20,23,24,25,28,32,34,35]

    f=False;s=""

    i=0;j=len(d)-1

    while i<=j:

        m=(i+j)//2

        s=s+","+str(d[m])

        if d[m]==key:

           f=True      

           break

        if key<d[m]:

           j=m-1

        else:

           i=m+1

    if f==True:

        print("查找成功!遍历的数据"+s)

    else:

    print("没有找到!")

    输入待查数据值为 23,执行该程序段,则输出的结果是(     )

    A、25,20,24,23 B、24,18,20,23 C、25,20,23 D、24,20,23

二、非选择题(本大题共4小题,6+6+7+7,共26分。)

  • 13. 小明收集了本周信息技术学科学习评价的数据,如图所示。

    (1)、观察上表小明做了如下操作,其中属于数据整理的是             (多选,填字母)
    A、删除重复行第五行 B、验证并修改D2单元格数据  C、通过公式计算全班平均分 D、重新设置C3单元格格式
    (2)、为了分析每个组的平均分,设计了如下Python程序。                    

    import pandas as pd

    import matplotlib.pyplot as plt

    df=pd.read_excel("成绩表.xlsx")

                

    print(df1)

    划线处的代码应为           (单选,填字母)

    A、df1=df.groupby("平均分").mean() B、df1=df.mean() C、df1=df.groupby("小组").mean() D、df1=df["小组"].mean()
    (3)、利用Python程序绘制各小题得分率图表,如图所示:

    请在划线处填写合适的代码。

    num=int(input("请输入小组:"))

    plt.figure(figsize=(10,5))

    list=[]

    for i in range(12):

        s="题"+str(i+1)

        list.append(df1.at[num,s]*50)

    plt.bar(range(1,13),list)

    plt.title(str(num)+" ")

    plt.xlabel("question number")

    plt.ylabel("correct rate")

    plt.show()

  • 14. 小明编写Python程序,实现对某次评价报名序号的检测并输出该考生的评价类别+科类类别。报名序号的编写方法是:由10位数字组成,毕业年份(4位)+评价类别(1位)+科类代码(1位)+顺序代码(4位)。评价类别:1普通、2 单项;科类类别:3 艺术类、4 体育类、5综合类。

    例如: 输入报名序号“2022150001”,输出“普通综合类”

    (1)、与加框处代码功能相同的是。(单选,填字母:A .s=dic[ticket[-6:-4]]/ B .s=dic[ticket[-6:-5]])
    (2)、实现查询功能的Python程序如下,请在划线处填入合适的代码

    while True:

        ticket=

        num=0

        for i in ticket:

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

              num=num+1

        If  len(ticket)!=10:

            print("输入长度不符合要求")

        elif :

            print("输入存在非数字字符")

        else:

            break

    dic={"13":"普通艺术类","14":"普通体育类","15":"普通综合类","23":"单项艺术类","24":"单项体育类","25":"单项综合类"}

    print("该考生的考试科类为:",s)

  • 15. 小明编写Python程序对本校跳高测试成绩进行排序,规则如下:按照性别分别对成绩进行降序排序并输出名次(女生排前,男生排后,同分同名次),计算结果如图所示

    (1)、程序中加框处代码有错,请改正。

    #把文件中的原始数据导入到数组a中,其中a[0][0]存储姓名,a[0][1]存储跳高成绩,a[0][2]存储性别,a[1][0]到a[1][2]存储第一位学生的相关信息,以此类推。代码略

    for i in range(1,   ①   ):

        for j in range(1,len(a)-i):

            if int(a[j][1])<int(a[j+1][1]) and a[j][2]==a[j+1][2]:

                a[j],a[j+1]=a[j+1],a[j]

            elif :

                a[j],a[j+1]=a[j+1],a[j]

    a[1][3]=1

    for i in range(2,len(a)):

        if a[i][1]!=a[i-1][1]:

            a[i][3]=i

        else:

                ②   

    t=0

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

        if a[i][2]=="女":

                ③     

        else:

          a[i][3]=a[i][3]-t

    #输出数据a到文件中,代码略

    (2)、请在划线处填入合适的代码。

  • 16. 小明使用Python编写了某答题卡中单项选择题的判分程序,该单选题每题2分。扫描答题卡获取选项填涂信息,输入标准答案,程序自动判断并输出分数。具体方法为:

    一个选项是否被填涂,可以从判断一个像素的颜色开始,像素的填涂情况是通过RGB的值来判断,灰度值低于132的表示该点被填涂;一个信息点64%的像素被填涂,则认为该区域已填涂,返回值为“1”。区域未填涂时返回值为“0”;各选项的编码为:A→“1000”,B→“0100”,C→“0010”,D→“0001”;输入标准答案,程序进行对比并返回结果。答题卡相关信息如下:

    (1)、某题的标准答案为“C”,该题填涂情况为“0100”,则分数为
    (2)、实现上述功能的程序如下,请在划线处填入合适的代码。

    from PIL import Image

    #输入起始点坐标(xs,ys),信息点宽度高度(fw, fh),间隔宽度高度(sw ,sh),代码略

    num = 5               # 判分个数

    def bw_judge(R, G, B):   # bw_judge用于判断一个像素的填涂情况 代码略

    def fill_judge(x, y):      # fill_judge用于判断信息点的填涂情况

        count = 0

        for i in range(x, x + fw + 1):

            for j in range(y, y + fh + 1):

                R, G, B = pixels[i, j]

                if bw_judge(R, G, B) = = True:

                    count = count + 1

        if count >= :

            return True

    total_width = fw+ sw

    total_height = fh + sh

    image = Image.open("t2.bmp")

    pixels = image.load()

    number = ""

    bz=[""]*num

    df=0

    bzd=input('请输入标准答案:')

    da={"A":"1000","B":"0100","C":"0010","D":"0001"}

    for i in range(len(bzd)):

        bz[i]=

    for row in range(num):                       #分数判定

        for col in range(4):

            y = ys + total_height * row

            if fill_judge(x, y) == True :

                number = number + '1'

            else:                           

                number = number + '0'

        if number = = bz[row]:

     df+=2

        number=""

    print("得分为:",df)