
1. 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送___________。
A命令
B口令
C消息
D调用语句
正确答案: C
2. 下面不属于软件需求分析阶段主要工作的是___________。
A需求评审
B需求获取
C需求变更申请
D需求分析
正确答案: C
3. 下面不属于软件测试实施步骤的是___________。
A确认测试
B单元测试
C回归测试
D集成测试
正确答案: C
4. 结构化程序设计中,下面对goto语句使用描述正确的是___________。
A禁止使用goto语句
B应避免滥用goto语句
C goto语句最好用,不容易造成结构体程序混乱。
D使用goto语句程序效率高正确答案: B
5. 数据库应用系统中的核心问题是___________。
A数据库管理员培训
B数据库维护
C数据库系统设计
D数据库设计
正确答案: D
6. 在E-R图中,用来表示实体联系的图形是___________。
A三角形
B菱形
C椭圆形
D矩形
正确答案: D
7. 在数据库设计中,将E-R图转换为关系数据模型的过程属于
A物理设计阶段
B需求分析阶段
C概念设计阶段
D逻辑设计阶段
正确答案: D
8. 一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是
A 12345ABCDE
B EDCBA54321
C 54321EDCBA
D ABCDE12345
正确答案: B9. 下列排序方法中,最坏情况下比较次数最少的是
A堆排序
B直接插入排序
C冒泡排序
D简单选择排序
正确答案: A
10. 支持子程序调用的数据结构是
A队列
B二叉树
C树
D栈
正确答案: D
11. Python 中对变量描述错误的选项是:
A Python 不需要显式声明变量类型,在第一次变量赋值时由值决定变量的类型
B变量通过变量名访问
C变量必须在创建和赋值后使用
D变量 PI 与变量 Pi 被看作相同的变量
正确答案: D
12.以下 Python 语句运行结果异常的选项是:
A >>> PI , r = 3.14 , 4
B >>> a = 1
>>> b = a = a + 1
C >>> x = True
>>> int(x)
D >>> a
正确答案: D13.以下对Python程序设计风格描述错误的选项是:
A Python中不允许把多条语句写在同一行
B Python语句中,增加缩进表示语句块的开始,减少缩进表示语句块的退出
C Python可以将一条长语句分成多行显示,使用续航符“\\”
D Python中不允许把多条语句写在同一行
正确答案: D
14.下列表达式的运算结果是:
>>> a = 100
>>> b = False
>>> a * b > -1
A False
B 1
C 0
D True
正确答案: D
15.运行以下程序,输出结果的是:
str1 = "Nanjing University"
str2 = str1[:7] + " Normal " + str1[-10:]
print(str2)
A Normal U
B Nanjing Normal
C Normal University
D Nanjing Normal University
正确答案: D
16.运行以下程序,输出结果的是:
print(" love ".join(["Everyday
A Everyday love Yourself
B Everyday love PythonC love Yourself love Python
D Everyday love Yourself love Python
正确答案: D
17. 26. 哪个选项是使用 PyInstaller 库对 Python 源文件打包的基本使用方法?
A pip -h
B pip install <拟安装库名>
C pip download <拟下载库名>
D pyinstaller 需要在命令行运行 :\\>pyinstaller 正确答案: D 18.以下程序的不可能输出结果是: from random import * print(round(random(),2)) A 0.47 B 0.54 C 0.27 D 1.87 正确答案: D 19. 以下程序的输出结果是: astr = '0\\n' bstr = 'A\a\\n' print("{}{}".format(astr,bstr)) A a a B A A C A a D A a 正确答案: D 20. 以下关于异常处理的描述,正确的是: A try 语句中有 except 子句就不能有 finally 子句 B Python 中,可以用异常处理捕获程序中的所有错误 C引发一个不存在索引的列表元素会引发 NameError 错误D Python 中允许利用 raise 语句由程序主动引发异常 正确答案: D 21. 以下语句执行后a、b、c的值是: a = "watermelon" b = "strawberry" c = "cherry" if a > b: c = a a = b b = c A watermelon strawberry cherry B watermelon cherry strawberry C strawberry cherry watermelon D strawberry watermelon watermelon 正确答案: D 22. 以下关于 Python 的控制结构,错误的是: A每个 if 条件后要使用冒号(:) B在 Python 中,没有 switch-case 语句 CPython 中的 pass 是空语句,一般用作占位语句 Delif 可以单独使用 正确答案: D 23. 以下代码段,不会输出A,B,C,的选项是: A for i in range(3): print(chr(65+i),end= B for i in [0,1,2]: print(chr(65+i),end= C i = 0 while i < 3: print(chr(i+65),end= i += 1 continue D i = 0 while i < 3: print(chr(i+65),end= break i += 1 正确答案: D 24. 设 x = 10;y = 20,下列语句能正确运行结束的是: A max = x >y ? x : y B if(x>y) print(x) C while True: pass D min = x if x < y else y正确答案: D 25.以下程序的输出结果是: Da = {"北美洲":"北极兔 Da["非洲"] = "大猩猩" print(Da) A('北美洲': '北极兔', '南美洲': '托哥巨嘴鸟', '亚洲': '大熊猫', '非洲': '大猩猩', '南极洲': '帝企鹅') B['北美洲': '北极兔', '南美洲': '托哥巨嘴鸟', '亚洲': '大熊猫', '非洲': '大猩猩', '南极洲': '帝企鹅'] C{"北美洲":"北极兔 D{'北美洲': '北极兔', '南美洲': '托哥巨嘴鸟', '亚洲': '大熊猫', '非洲': '大猩猩', '南极洲': '帝企鹅'} 正确答案: D 26. 以下关于列表操作的描述,错误的是: A通过 append 方法可以向列表添加元素 B通过 extend 方法可以将另一个列表中的元素逐一添加到列表中 C通过 insert(index,object) 方法在指定位置 index 前插入元素 object D通过 add 方法可以向列表添加元素 正确答案: D 27. 以下关于字典操作的描述,错误的是: A del 用于删除字典或者元素 B clear 用于清空字典中的数据 C len 方法可以计算字典中键值对的个数 D keys 方法可以获取字典的值视图 正确答案: D 28.以下程序的输出结果是:L1 =['abc', ['123','456']] L2 = ['1','2','3'] print(L1 > L2) A False B TypeError: '>' not supported between instances of 'list' and 'str' C 1 D True 正确答案: D 29. 以下属于 Python 脚本程序转变为可执行程序的第三方库的是: A requests B scrapy C numpy D pyinstaller 正确答案: D 30. 以下属于 Python 中文分词方向第三方库的是: A pandas B beautifulsoup4 C python-docx D jieba 正确答案: D 31. 以下生成词云的 Python 第三方库的是: A matplotib B TVTK C mayavi D wordcloud 正确答案: D 32. Python 中函数不包括 A标准函数 B第三库函数C内建函数 D参数函数 正确答案: D 33. Python 中,函数定义可以不包括以下:A函数名 B关键字 def C一对圆括号 D可选参数列表 正确答案: D 34.以下程序的输出结果是: def func(num): num *= 2 x = 20 func(x)print(x) A40 B出错 C无输出 D20 正确答案: D 35.以下程序的输出结果是: def func(a,*b): for item in b: a += item return a m = 0print(func(m,1,1,2,3,5,7,12,21,33)) A33 B0 C7D85 正确答案: D 36.下程序的输出结果是: a = ["a b = a[::-1]print(b) A ['a', 'b', 'c'] B 'c', 'b', 'a' C 'a', 'b', 'c' D ['c', 'b', 'a'] 正确答案: D 37. Python 文件只读打开模式是 A w B x C b D r 正确答案: D 38. Python 文件读取方法 read(size) 的含义是 A从头到尾读取文件所有内容 B从文件中读取一行数据 C从文件中读取多行数据 D从文件中读取指定 size 大小的数据,如果 size 为负数或者空,则读取到文件结束。 正确答案: D 39. 关于数据组织的维度描述正确的是 A二维数据由对等关系的有序或无序数据构成 B高维数据由关联关系数据构成 CCSV 是一维数据D一维数据采用线性方式存储 正确答案: D 40. 同时去掉字符串左边和右边空格的函数是: A center() B count() C fomat() D strip() 正确答案: D 二、操作题 1.基本操作题 (1) 从键盘输入 3 个数作为三角形的边长,在屏幕上显示输出由这 3 个边长构成三角形的面积(保留 2 位小数)。 请参照代码模板,完善代码。 输入输出示例 a,b,c = eval(input()) p = (a+b+c)/2 area = pow(p * (p-a)*(p-b)*(p-c),0.5)print("{:.2f}".format(area)) 2.基本操作题(2) 将一个列表中所有的单词首字母转换成大写。 请参照代码模板,完善代码。 输入输出示例 ls = eval(input()) for i in range(len(ls)): ls[i] = ls[i].capitalize()print(ls) 3.基本操作题(3) 从键盘输入一个列表,计算输出列表元素的均方差。 请参照代码模板,完善代码。本题支持自动评阅。 输入输出示例 def mean(numlist): s = 0.0 for num in numlist: s = s + num return s/len(numlist) def dev(numlist,mean): sdev = 0.0 for num in numlist: sdev = sdev + (num - mean)**2 return (sdev /(len(numlist)-1) )** 0.5#请输入一个列表: ls = eval(input(""))print("均方差为:{:.2f}".format(dev(ls,mean(ls))))4.简单操作题(1) 使用 turtle 库的 turtle.right() 函数和 turtle.circle() 函数绘制一个星星图形,如下图所示。 请参照代码模板,完善代码。 --------------------------------------------------------------- 自动评阅说明 使用字符串形式输出 ____①____,____②____,____③____中应填代码即可以自动评阅得分 例如,如果代码为: # 代码模板 | # 你的代码 import turtle | import turtle d = 0 | d = 0for i in range(__1__): | for i in range(1): turtle.fd(__2__) | turtle.fd(100) d = __3__ | d = (i + 100) * 100 turtle.seth(d) | turtle.seth(d) 则在提交代码页面输入: print('1', '100', '(i + 100) * 100') 提交后即可以查看得分 注:如果有运算符,请在运算符两侧加上空格习题讲解 import turtlefor i in range(4): turtle.circle(-90,90) turtle.right(180)print(-90,180) 5.简单操作题(2) 用字典和列表型变量完成某课程的考勤记录统计,某班有 74 名同学,名单由考生目录下文件 txt 给出,某课程 10 次考勤数据由考生目录下文件 1.csv,2.csv … 给出。请输出全勤同学的名字。 请参照代码模板,完善代码。 输入输出示例 # 从csv文件中读取考勤数据 ls = []for i in range(1,11): fo = open(str(i) +".csv for line in fo: line = line.replace("\\n ls.append(line.split( fo.close() counts = {}for name in ls: counts[name] = counts.get(name,0) + 1 items = list(counts.items())print("全勤同学有: if count == 10 : #print("{0:<10}:{1:<5}次".format(word,count)) print(word,end = 6.综合应用题苏格拉底是古希腊著名的思想家、哲学家、教育家、公民陪审员。苏格拉底的名言部分被翻译为中文,部分内容分词结果由考生目录下文件 sgldout.txt 给出。对文件 sgldout.txt 进行分析,输出词频排名前五的词 (不包括中文标点符号) 和次数到 sgldstatistics.txt。 参照输出格式如下: 了:234 了:234 了:234 了:234 了:234 请参照代码模板,完善代码,通过单机测试运行程序。 ----------------------------------- 自动评阅说明 不需要打开(open)写入(writeline)文件,使用 print 输出内容即可自动评阅。 习题讲解 import jieba fo = open("sgldout.txt words = fo.readlines() fo.close() sym = ";。,“”: " DictWords = {} for ls in words: if ls[:-1] not in sym: DictWords[ls[:-1]] = DictWords.get(ls[:-1], 0) + 1 L = list(DictWords.items()) L.sort(key = lambda s:s[1],reverse=True) # 输出到文件 fo = open("sgldstatistics.txt # print 输出for i in range(5): print(L[i][0] + ":" + str(L[i][1]))
