全国计算机等级考试二级教程版——Python语言程序设计参考答案

时间:2024-03-10 11:45:48

第二章 Python语言基本语法元素

一、选择题
C B B C A D B A D B
二、编程题
1.获得用户输入的一个整数N,计算并输出N的32次方。
在这里插入图片描述
2.获得用户输入的一段文字,将这段文字进行垂直输出。
在这里插入图片描述
3.获得用户输入的一个合法算式,例如1.2+3.4,输出运算结果。
在这里插入图片描述
4.获得用户输入的一个小数,提取并输出其整数部分。
在这里插入图片描述
5.获得用户输入的一个整数N,计算并输出1到N相加的和。
在这里插入图片描述
第三章 数字类型

一、选择题
C A A A B A C D A C

    解析:
    1.对于整数类型,输出格式包括如下6种。

    b: 输出整数的二进制方式; c: 输出整数对应的 Unicode 字符; d: 输出整数的十进制方式; o: 输出整数的八进制方式; x:
    输出整数的小写十六进制方式; X: 输出整数的大写十六进制方式;

    4.Python内置数据类型。 python的数据类型以是否可变,可分为可变类型和不可变类型,对于可变类型来说,操作一般涉及增、删、改、查,对于不可变类型,一般的操作只有查。
    不可变类型:数字、字符串、bytes、元组 其中数字类型:整数int、浮点数float、复数complex 可变类型:列表、字典、集合
    相关链接:https://www.cnblogs.com/blackmatrix/p/5614086.html

二、编程题
1.获得用户输入的一个整数,输出该整数百位及以上的数字。
在这里插入图片描述
2.获得用户输入的一个字符串,将字符串按照空格分割,然后逐行打印出来。
在这里插入图片描述
3.程序读入一个表示星期几的数字(1-7),输出对应的星期字符串名称。例如,输入3,返回“星期三”。
在这里插入图片描述
4.设n是一任意自然数,如果n的各位数字反向排列所得自然数与n相等,则n被称为回文数。从键盘输入一个5位数字,请编写程序判断这个数字是不是回文数。
在这里插入图片描述
5.输入一个十进制整数,分别输出其二进制、八进制、十六进制字符串。
在这里插入图片描述
第四章 程序的控制结构

一、选择题
B A D C D D C A C D
二、编程题
1.输入一个年份,输出是否是闰年。#闰年条件:能被4整除但不能被100整除,或者能被400整除的年份,都是闰年。
在这里插入图片描述
2.最大公约数计算。获得两个整数,求出这两个整数的最大公约数和最小公倍数。最大公约数的计算一般使用辗转相除法,最小公倍数则使用两个数的乘积除以最大公约数。
在这里插入图片描述
3.统计不同字符个数。用户从键盘键入一行字符,编写一个程序,统计并输出其中英文字符、数字、空格和其他字符的个数。
在这里插入图片描述

    #unicode编码范围: 汉字: 十六进制 [0x4e00, 0x9fa5] / 十进制 [19968,40869]

    数字:十六进制 [0x30, 0x39] / 十进制 [48, 57]

    小写字母:十六进制 [0x61, 0x7a] / 十进制 [97,122]

    大写字母:十六进制 [0x41, 0x5a] / 十进制 [65, 90],

    注:chr(x) & ord(x)使用的是 单个字符,或者十进制INT格式的unicode编码;

4.改编题目1中的程序,当用户输入出错时给出“输入内容必须是整数!”的提示,并让用户重新输入。
在这里插入图片描述
5.羊车门问题。有三扇关闭的门,一扇门后面停着汽车,其余门后是山羊,只有主持人知道每扇门后面是什么。参赛者可以选择一扇门。在开启它之前,主持人会开启另外一扇门,露出门后的山羊。此时,允许参赛者更换自己的选择。请问,参赛者更换选择后能否增加猜中汽车的机会?——这是一个经典问题。请使用random库对这个随机事件进行预测,分别输出参赛者改变选择和坚持选择获胜的概率。
在这里插入图片描述
第五章 函数和代码复用

一、选择题
B B B D C B B C C D
二、编程题
1.实现isNum()函数,参数作为一个字符串,如果这个字符串属于整数、浮点数或复数的表示,则返回True,否则返回False。
在这里插入图片描述
2.实现isPrime函数,参数为整数,要有异常处理。如果整数是质数,返回True,否则返回False。
在这里插入图片描述
3.编写一个函数计算传入字符串中数字、字母、空格以及其他字符的个数。
在这里插入图片描述
4.编写一个函数,打印200以内的所有素数,以空格分隔。
在这里插入图片描述
5.编写一个函数,参数为一个整数n。利用递归获取斐波那契数列中的第n个数并返回。
在这里插入图片描述
第六章 组合数据类型

一、选择题
B B B B A D D A D D

    解析:2.字典的key只能是不可变数据类型;

二、编程题
1.英文字符频率统计。编写一个程序,对给定字符串中出现的a~z字母频率进行分析,忽略大小写,采用降序方式输出。
在这里插入图片描述
2.中文字符频率统计。编写一个程序,对给定字符串中出现的全部字符(含中文字符)频率进行分析,采用降序方式输出。
在这里插入图片描述
3.随机密码生成。编写程序,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码。
在这里插入图片描述
4.重复元素判定。编写一个函数,接受列表作为参数,如果一个元素在列表中出现了不止一次,则返回True,但不要改变原来列表的值。同时编写调用这个函数和输出测试结果的程序。
在这里插入图片描述
5.重复元素判定续。利用集合的无重复性改编上一个程序,获得一个更快更简洁的版本。
在这里插入图片描述
第七章 文件和数据格式化

一、选择题
B A C C C C C C D C
二、编程题
1.输入一个文件和一个字符,统计该字符在文件中出现的次数。
在这里插入图片描述
2.假设有一个英文文本文件,编写一个程序读取其内容并将里面的大写字母变成小写字母,小写字母变成大写字母。
在这里插入图片描述
3.编写一个程序,生成一个10×10的随机矩阵并保存为文件(空格分隔行向量,换行分隔列向量),再写程序将刚才保存的矩阵文件另存为CSV格式,用Excel或文本编辑器打开看看结果对不对。
在这里插入图片描述
4.编写一个程序,读取一个python源代码文件,将文件中所有除保留字外的小写字母换成大写字母,生成后的文件要能够被Python解释器正确执行。
在这里插入图片描述
以Q4resouce.py为用例运行结果如下:
在这里插入图片描述

    注意:Q4.py中table列表中的元素需视源代码具体情况而定,table用来存放除了保留字以外的关键字,如库名以及函数名,否则会影响生成后的文件(此例为Q4result.py)的运行。

5.编写一个程序,要求能够将元素为任意Python支持的类型(包括含有半角逗号的字符串)的列表转储为CSV,并能够重新正确解析为列表。
在这里插入图片描述
第九章 Python标准库概览

一、选择题
A A D C C B B A B D
二、编程题
1.使用turtle库绘制一个蜂窝状六边形
在这里插入图片描述
运行结果如下:
在这里插入图片描述
2.使用turtle库绘制一朵玫瑰花。

import turtle
 
# 设置初始位置
turtle.penup()
turtle.left(90)
turtle.fd(200)
turtle.pendown()
turtle.right(90)
 
# 花蕊
turtle.fillcolor("red")
turtle.begin_fill()
turtle.circle(10,180)
turtle.circle(25,110)
turtle.left(50)
turtle.circle(60,45)
turtle.circle(20,170)
turtle.right(24)
turtle.fd(30)
turtle.left(10)
turtle.circle(30,110)
turtle.fd(20)
turtle.left(40)
turtle.circle(90,70)
turtle.circle(30,150)
turtle.right(30)
turtle.fd(15)
turtle.circle(80,90)
turtle.left(15)
turtle.fd(45)
turtle.right(165)
turtle.fd(20)
turtle.left(155)
turtle.circle(150,80)
turtle.left(50)
turtle.circle(150,90)
turtle.end_fill()
 
# 花瓣1
turtle.left(150)
turtle.circle(-90,70)
turtle.left(20)
turtle.circle(75,105)
turtle.setheading(60)
turtle.circle(80,98)
turtle.circle(-90,40)
 
# 花瓣2
turtle.left(180)
turtle.circle(90,40)
turtle.circle(-80,98)
turtle.setheading(-83)
 
# 叶子1
turtle.fd(30)
turtle.left(90)
turtle.fd(25)
turtle.left(45)
turtle.fillcolor("green")
turtle.begin_fill()
turtle.circle(-80,90)
turtle.right(90)
turtle.circle(-80,90)
turtle.end_fill()
 
turtle.right(135)
turtle.fd(60)
turtle.left(180)
turtle.fd(85)
turtle.left(90)
turtle.fd(80)
 
# 叶子2
turtle.right(90)
turtle.right(45)
turtle.fillcolor("green")
turtle.begin_fill()
turtle.circle(80,90)
turtle.left(90)
turtle.circle(80,90)
turtle.end_fill()
 
turtle.left(135)
turtle.fd(60)
turtle.left(180)
turtle.fd(60)
turtle.right(90)
turtle.circle(200,60)

#原文链接:https://blog.csdn.net/zaq0123/article/details/78573186/

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90

运行结果:
在这里插入图片描述
3.使用turtle库绘制一个颜色图谱。
在这里插入图片描述
为了防止运行时间过长,我将步长设置为80,运行结果如下:
在这里插入图片描述
4.使用random库生成一个包含10个0~100之间随机整数的列表。
在这里插入图片描述
5.利用time库将当前日期时间转化成类似“Sunday, 8.January 2017 11:03PM”的格式。
在这里插入图片描述
第十章 Python第三方库概览

一、选择题
B D C C D C B A B A
二、编程题
1.使用jieba.cut()对“Python是最有意思的编程语言”进行分词,输出结果,并将该迭代器转换为列表类型。
在这里插入图片描述
2.使用jieba.cut()对“今天晚上我吃了意大利面”进行分词,输出结果,并使“意大利面”作为一个词出现在结果中。
在这里插入图片描述
3.自选一篇报告或者演讲稿,利用jieba分析出其词频排前五的关键词。
在这里插入图片描述4.选择你最喜欢的小说,统计出场人物词频排名。
在这里插入图片描述5.续上题,将上题结果以词云的方式实现,并尝试美化生成的词云图片。


原文:https://blog.csdn.net/weixin_43886356/article/details/86674160