• #我的试题回顾(18)


    我的试题回顾(1-8)

    第1题:单项选择题

    下列程序执行结果为:B

    for i in range(2):
        print(i, end="")
    for i in range(4, 6):
        print(i, end="")
    
    A :246
    B:0145
    C:012456
        0
    D:  1
        4
        5
    

    答案解析
    考察重点: print()函数,for和 range()函数。

    range()函数的语法为: range(start, end, step)
    start: 计数从 start 开始,默认是从 0 开始;例如 range(5) 等价于 range(0, 5);
    end: 计数到 end 结束,但不包括 end;例如:range(0, 5) 等于 [0, 1, 2, 3, 4],没有5;
    step:步长,默认为1。
    range(2)是0,1, range(4, 6)是4,5,由于打印时使用了end参数( end="")把每次打印的换行符替换掉,所以最后结果为0145。

    第2题:单项选择题

    下列程序执行结果为:B

    for x in {'a': 'b', 'c': 'd'}:
        print(x, end=" ")
    
    A:b c
    B:a c
    C:b d
    D:a b
    

    考察重点:提取字典键/值/键值对。

    dict1 = {'a': 'b', 'c': 'd'}
    # 遍历字典的键
    for x in dict1:
        print(x)
    # 遍历字典的值
    for x in dict1.values():
        print(x)
    # 遍历字典的键值对
    for k, v in dict1.items():
        print(k, v)
    

    第3题:单项选择题

    下列程序执行结果是:D

    n = 0
    for i in '2019-2020':
        n += 1
    print(n)
    
    A:2
    B:3
    C:8
    D:9
    

    答案解析
    考察重点:for循环遍历字符串。

    for循环能够遍历字符串;
    字符串'2019-2020'的长度为9,那么循环次数也为9;
    for循环结束后, n 的值即为所遍历的字符串的长度, n为9。

    第4题:单项选择题

    运行下列的代码,结果是:D

    d = [1, 5, 9, 8]
    a = 7
    print(bool(a in d))
    
    A:报错
    
    B:None
    
    C:True
    
    D:False
    

    答案解析
    考察重点:成员运算符。

    打印的是“a in d”这个表达式是打印布尔值False或Ture, a不再列表 b中,因此为False。

    第5题:单项选择题

    下面的循环会运行多少次?C

    for i in range(1, 6):
         print('Hi,William')
    
    A:3
    B:4
    C:5
    D:6
    

    答案解析
    考察重点:for和 range()函数。

    range(1,6)表示范围1-6(包括1,不包括6)运行的次数为6-1=5。

    第6题:单项选择题

    助教正义在写一个小游戏。想把启动的功能交给你来写。要求如下:
    一局游戏结束之后,系统会询问是否要继续玩游戏,如果愿意则继续玩,不愿意玩则退出游戏。
    下面哪个代码不能实现这个效果?D

    A
    x = True
    while x:
        print('新游戏开始!\n游戏结束~')
        y = input('输入y可再来一次游戏:')
        if y != 'y':
            x = False
    
    B
    while True:
        print('新游戏开始!\n游戏结束~')
        y = input('输入y可再来一次游戏:')
        if y != 'y':
            break
    
    C
    y = ''
    while y == 'y' or 'Y':
        print('新游戏开始!\n游戏结束~')
        y = input('输入y或Y可再来一次游戏:')
        if y == 'y' or y == 'Y':
            continue
        else:
            break
    
    D
    while 'False':
        print('新游戏开始!\n游戏结束~')
        y = input('输入y或Y可再来一次游戏:')
        if y != 'y' or y != 'Y':
            break
    

    答案解析
    考察重点:while循环结构, break语句, continue语句。

    A能实现,通过设置变量 x=True,开启循环,当输入 y不等于指定输入时, x会变成False,循环关闭;
    B能实现,通过判断输入变量是否为y,不是y则执行 break语句,跳出循环;
    C能实现,条件 y == 'y' or 'Y'为真,可以开启循环的,因为 or 后面的条件为字符串 'Y',非空字符串为真;
    D不能实现,while后的'False'为字符串,开启while循环,如果输入y或Y,if条件判断为真(其实输入任何字符,if条件判断都为真;if语句的条件y != 'y' or y != 'Y'等价于y == 'y' and y == 'Y'(y不可能即等于'y'且等于'Y'),因此代码中if语句的组合条件一定为真),执行 break语句,跳出循环,停止游戏。

    第7题:单项选择题

    以下代码会出现多少次‘666666’?B

    teacher_list = ['正义','卡西','漫漫','延君']
    for teacher in teacher_list:
        if teacher != '卡西':
            pass
            print ('666666')
        print ('助教:'+teacher+'爱你喔')
    
    print('风变爱你喔')
    
    A:0次
    B:3次
    C:4次
    D:程序报错,无结果
    

    答案解析
    考察重点:循环过程与循环次数。循环遍历列表。

    teacher_list = ['正义', '卡西', '漫漫', '延君']
    # 遍历列表teacher_list
    for teacher in teacher_list:
        # 如果teacher不等于'卡西',会打印'666666'
        if teacher != '卡西':
            pass
            print('666666')
        print('助教:' + teacher + '爱你喔')
    
    print('风变爱你喔')
    

    第8题:单项选择题

    运行下列代码,在终端中的显示结果是什么?C

    while True:
        while True:
            break
            print(1)
        print(2)
        break
    print(3)
    
    A:2
    B:3
    C:2
      3
    D:2 3
    

    答案解析
    考察重点: break语句。

    break只会跳出一个循环;
    先执行内部的while循环,第一个 break跳出内部while循环,不打印任何内容;
    再执行外部的while循环,先打印“2“,然后 break跳出外部while循环;
    最后打印循环外的“3“。

    第9题:单项选择题

    下面代码的执行结果是什么?D

    while True:
        if a > 6:
            print('你猜的太大啦')
        elif a == 6:
            print('猜对了')
        else:
            print('你猜的太小了')
        break
    
    A:你猜的太大啦
    B:你猜的太小了
    C:猜对了
    D:报错,报错信息为name 'a' is not defined
    

    答案解析
    考察重点:常见语法错误。

    代码中并没有先定义 a,所以会报错

    第10题:单项选择题

    以下选项中,哪项是正确的切片结果:A

    A
    list1 = [1, 3, 5, 8, 2, 9]
    print(list1[1:])
    结果为[3, 5, 8, 2, 9]
    
    B
    list1 = [1, 5, 19, 11, 23, 9]
    print(list1[2:3])
    结果为[5, 19]
    
    C
    list1 = [0, 5, 11, 5, 27, 14]
    print(list1[:3])
    结果为[5, 27, 14]
    
    D
    list1 = [36, 21, 15, 7, 27, 14]
    print(list1[2:])
    结果为[21, 15, 7, 27, 14]
    

    答案解析
    考察重点:列表切片。

    A正确;
    B错误,结果为[19];
    C错误,结果为[0, 5, 11];
    D错误,结果为[15, 7, 27, 14];

    第11题:单项选择题

    以下代码运行后的结果是:C

    for i in range(1, 10, 2):
        print(i, end='、')
    
    A:0、1、2、3、4、5、6、7、8、9、
    
    B:0、2、4、6、8、
    
    C:1、3、5、7、9、
    
    D:2、4、6、8、
    

    答案解析
    考察重点:for和 range()函数。

    for i in range(1, 10, 2),i的取值是1 <= i < 9,取值的间隔为2,索引i的取值依次为1,3,5,7,9;
    print(i, end='、')的意思是打印后以“、”结尾,所以打印结果是“ 1、3、5、7、9、“。

    第12题:单项选择题

    能用 print()函数正确打印的是:A

    A:print(2)
    B:print(abc)
    C:print('10'+4)
    D:print("333')
    

    答案解析
    考察重点: print()函数,字符串拼接。

    A正确;
    B错误,字符打印要加引号或双引号;
    C错误,使用+拼接字符串,数据类型必须一致;
    D错误,单引号和双引号不能同时用。

    第13题:单项选择题

    双十一,女士们的剁手节,男士们的割肾日。男士们觉得自己只有两个肾,不禁割,齐向上帝祈祷,废除双十一。上帝提出只要打印出5,就满足男士们的愿望。
    下列哪个选项能实现男士的愿望,维护世界和平?A

    A:print(1+4)
    B:print("3"+2)
    C:print('0+5')
    D:print("5')
    

    答案解析
    考察重点: print()函数,字符串拼接。

    A正确,能够打印出5;
    B错误,使用 +拼接字符串,数据类型必须一致;
    C错误,会打印出"0+5"这个字符串,而不是5;
    D错误,单引号和双引号不能同时用。

    第14题:单项选择题

    下面哪个选项是正确:A

    A:print('1+4')
    B:print(6+'2')
    C:print('''0+5')
    D:print(快乐生活)
    

    答案解析
    考察重点: print()函数,字符串拼接。

    A正确;
    B错误,使用 +拼接字符串,数据类型必须一致;
    C错误,三引号和单引号不能同时引用;
    D错误,字符串打印要加引号;

    第15题:单项选择题

    选择下列程序的正确打印结果:A

    for i in 'python':
        if i == 'h':
            pass
        print(i, end='')
    
    A:python
    B:pyt
    C:pyth
    D:pyton
    

    答案解析
    考察重点: pass语句。

    pass只起到补充结构的作用,占个位置,并不执行任何操作。

    第16题:单项选择题

    下列说法正确的是:C

    while True:
        for i in range(6):
            if i == 3:
                break
            print(i)
        break
    
    A:第一个 break跳出if判断,第二个 break跳出while循环
    B:第一个 break跳出if判断,第二个 break跳出for循环
    C:第一个 break跳出for循环,第二个 break跳出while循环
    D:第一个 break跳出while循环,第二个 break没有执行
    

    答案解析
    考察重点: break语句。

    break和 continue都是用在循环中, break跳出的是离它最近的循环。

    第一个 break跳出的是for循环,如果if判断语句的条件为真,那么跳出for循环;
    第二个 break跳出while循环。

    第17题:多项选择题

    关于循环和else语句,下列说法错误的是?【 A 、 C 、 D 】

    A:while循环不能搭配 else语句
    
    B:for循环和while循环都可以搭配 else语句
    
    C:只要循环结束,一定会执行 else 语句
    D:一定要进入循环,才可能执行 else语句
    

    答案解析
    考察重点: else语句。

    for循环和while循环都可以搭配 else语句;
    如果循环正常结束,则执行 else语句,如果使用break语句跳出循环,不执行 else语句;
    即使条件不满足,不能进入循环,也会执行 else语句。

    第18题:单项选择题

    跳过当前循环中的未执行的语句,进行下一轮循环的关键词是:A

    A:continue
    
    B:break
    
    C:return
    
    D:for
    

    答案解析
    考察重点: continue语句。

    continue语句的功能是跳过当前循环中的剩余语句,然后继续进行下一轮循环。

    第19题:单项选择题

    条件为True,想要程序无限执行直到人为停止的话,需要使用的关键词是:C

    A:for
    
    B:break
    
    C:while
    
    D:if
    

    答案解析
    考察重点:while 循环结构。

    while是只要满足条件就会一直循环,所以想要程序无限执行,需要用while循环。

    第20题:单项选择题

    运行下列代码,会打印几行?D

    a = 1
    while '延君真可爱':
        a = 0
        a = a*2
        print(a)
        a += 1
        if a > 10:
            break
    
    A:2行  
    B:3行  
    C:4行  
    D:死循环
    

    答案解析
    考察重点:非空字符串,布尔值为True,因此'延君真可爱'的布尔值为真,进入while循环;

    第三行代码 a=0,每次循环都会重新将a赋值为0,所以循环内的if条件,永远为假,无法执行 break,会陷入死循环;

    如果去掉,第三行代码a=0,循环过程如下:
    第一次循环, a=a2,结果使a的值更新为2并打印出来,再加1为3,小于10, else语句生效,返回循环;
    第二次循环, a=a
    2,结果使a的值更新为6并打印出来,再加1为7,小于10, else语句生效,返回循环;
    第三次循环, a=a*2,结果使a的值更新为14并打印出来,再加1为15,大于10,if语句生效,跳出循环。

  • 相关阅读:
    Importing csv data file in SQLite3
    【北京】【高级爬虫开发工程师、高级网页分析工程师】知名上市互联网公司招聘【猎头】
    介绍一个C++的ORM工具ODB(一)
    基础c练习
    virtualenv中文文档放出,请雅正
    navicat sqlite使用了一种wine的方式来支持linux平台,
    之前 传闻已经的djblets竟是reviewboard团队整的
    在HTML5 Web SQL中使用ORM工具 前端开发 e800
    本来想注册个51cto的blog
    Portable way to get file size (in bytes) in shell?
  • 原文地址:https://www.cnblogs.com/ywb123/p/16357547.html
Copyright © 2020-2023  润新知