问题描述:
python计算机二级易错选择题汇总
问题解答:
计算机系统知识和部分列表操作还需要记住一些易错点。
###################################################################
1、一台计算机有30个终端用户同时使用C语言系统,则该计算机使用的操作系统是()
A.嵌入式操作系统
B分布式操作系统
C实时操作系统
D.分时操作系统
正确答案是:
D. 分时操作系统
解释
分时操作系统(Time-sharing Operating System)是一种允许多个用户通过终端同时交互使用计算机的操作系统。每个用户在使用计算机时,系统会为每个用户分配一个时间片,使得每个用户感觉到自己在独占使用计算机。主要特点是多用户和交互性,这与题目中描述的“30个终端用户同时使用C语言系统”的情况相符。
其他选项的解释
A. 嵌入式操作系统
- 嵌入式操作系统通常用于专用设备,嵌入在设备中运行特定功能。例如,手机、家电中的操作系统。它们不用于支持多个终端用户的交互操作。
B. 分布式操作系统
- 分布式操作系统通过将多个独立的计算机系统连接在一起,作为一个单一的系统来操作。虽然它们可以提供高效的资源共享,但这与题目中描述的终端用户同时使用单一系统的情况不一致。
C. 实时操作系统
- 实时操作系统用于对响应时间要求非常严格的应用,例如工业控制、航空航天等。它们的主要目的是在确定的时间内完成特定任务,而不是支持多用户的交互性。
因此,结合题目描述的情况,最符合的是 D. 分时操作系统。
#######################################################################
一台计算机有30个终端用户同时使用C语言系统。意思是一台主机连着30台屏幕,30个用户共用一个主机吗?
在计算机术语中,一个终端用户通常指的是一个用户通过终端设备(如电脑、手机、平板等)与计算机系统进行交互的个体。因此,题目中描述的一台计算机有30个终端用户同时使用C语言系统,意味着有30个不同的用户通过各自的终端设备同时与计算机系统交互,而不是指一台主机连接了30台屏幕,30个用户共用一个主机。
#####################################################################
30个不同的用户自己的终端设备上没有C语言系统吗,还非要与计算机系统交互?
理论上来说,每个用户的终端设备上并不需要安装C语言系统,因为终端设备上的操作系统通常与所连接的计算机系统相互配合,用户通过终端设备上的应用程序或者命令行界面与计算机系统进行交互。在这种情况下,用户在终端设备上运行的程序可能是一个远程终端(如SSH),通过网络连接到远程计算机系统,然后在该计算机系统上使用C语言编写的程序进行操作。
举例来说,用户可能会使用自己的终端设备上的SSH客户端连接到一个运行C语言程序的远程服务器,然后在该服务器上执行C语言程序并与之交互。
所以,虽然每个用户的终端设备上没有必要安装C语言系统,但他们可以通过与计算机系统的网络连接与之交互,包括执行计算机系统上的C语言程序。
#####################################################################
8、概念模型是( )。
A.用于现实世界的建模,与具体的DBMS无关
B.用于现实世界的建模,与具体的DBMS有关
C.用于信息世界的建模,与具体的DBMS有关
D.用于信息世界的建模,与具体的DBMS无关
概念模型的定义:为了把现实世界中的具体事物抽象、组织为某一数据库管理系统(DBMS)支持的数据模型,人们常常首先将现实世界抽象为信息世界,然后将信息世界转换为机器世界。也就是说,首先把现实世界中的客观对象抽象为某一种信息结构,这种信息结构并不依赖于具体的计算机系统,也不是某一个数据库管理系统(DBMS)支持的数据模型,而是概念级的模型,称为概念模型。
接下来,我们逐项分析选项:
A. 用于现实世界的建模,与具体的DBMS无关:从描述来看,这个选项表达了概念模型用于现实世界的建模,并且与具体的数据库管理系统无关,这与定义相符。
B. 用于现实世界的建模,与具体的DBMS有关:这个选项与定义不符,因为概念模型并不依赖于具体的数据库管理系统。
C. 用于信息世界的建模,与具体的DBMS有关:这个选项虽然指出了概念模型用于信息世界的建模,但错误地表示它与具体的数据库管理系统有关。
D. 用于信息世界的建模,与具体的DBMS无关:这个选项虽然正确地指出了概念模型与具体的数据库管理系统无关,但错误地表示它用于信息世界的建模,而实际上它是现实世界到信息世界的第一层抽象。
综上所述,正确的答案是A:概念模型用于现实世界的建模,与具体的DBS(这里可能是DBMS的误写)无关。
####################################################################
9、学籍管理系统中学生和学籍档案之间的联系是()
A.M:N
B.N:1
C.1:1
D.1:N
学籍管理系统中,学生和学籍档案之间的联系通常是一对一的关系,因为一个学生只对应一个学籍档案,而一个学籍档案也只属于一个学生。因此,正确答案是:
C. 1:1
########################################################################
14、以下代码的执行结果是()。
a="100"
print(eval(a+"1+2"))
A.100+1+2
B.103
C.1003
D.执行出错
代码中的 eval()
函数会将字符串作为表达式进行求值。在这个例子中,a
的值是字符串 "100"
,然后字符串连接 "100"
和 "1+2"
得到 "1001+2"
。这个字符串被传递给 eval()
函数进行求值。
因此,代码的执行结果是:
C. 1003
注意:字符串是可以进行加法运算的。
#######################################################################
19、关于Python二分支精简结构的表示,正确的选项是()。
A.表达式1 if 条件 表达式2 else
B.条件 if 表达式1 else 表达式2
C.表达式1 if 表达式2 else 条件
D.表达式1 if 条件 else 表达式2
在Python中,二分支精简结构的表示通常是形如以下形式的:
D. 表达式1 if 条件 else 表达式2
在这种结构中,如果条件成立,则表达式1被执行,否则执行表达式2。因此,选项 D 是正确的。
x = 10
y = 20
result = "x 大于 y" if x > y else "x 不大于 y"
print(result)
在这个例子中,我们使用了二分支精简结构,根据条件判断 x > y
的结果,如果为真,则返回 "x 大于 y",否则返回 "x 不大于 y"。
运行结果是:
x 不大于 y
因为 x
的值是 10,而 y
的值是 20,所以 x
不大于 y
。
########################################################################
这里需要注意,end这个是空格,而不是什么都没有。
#########################################################################
27、关于全局变量和局部变量的描述,错误的选项是()。
A.局部变量标识符不能与任何全局变量的标识符相同,即严格不能重名
B.在函数内部引用数字类型全局变量时,必须使用gobal保留字声明
C.在函数内部引用组合类型全局变量时,可以不通过global保留字声明
D.全局变量在Python文件最外层声明时,语句前没有缩进
A. 局部变量标识符不能与任何全局变量的标识符相同,即严格不能重名
这个描述是错误的。在Python中,局部变量和全局变量可以有相同的名称,但是它们的作用域是不同的。如果在函数内部定义了一个与全局变量同名的局部变量,那么在函数内部引用这个变量时,将会引用到局部变量,而不是全局变量。但是,这并不意味着局部变量的标识符“严格不能重名”全局变量的标识符。
B. 在函数内部引用数字类型全局变量时,必须使用global保留字声明
这个描述是错误的。在Python中,当你想要在函数内部修改全局变量的值时,无论这个全局变量是哪种类型(包括数字类型),你都需要使用global
关键字来声明这个变量是全局的。但是,如果你只是引用全局变量而不修改它,那么不需要使用global
关键字。
C. 在函数内部引用组合类型全局变量时,可以不通过global保留字声明
这个描述是正确的。在Python中,对于组合类型(如列表、字典等)的全局变量,如果你在函数内部只是修改它的内容(比如向列表中添加元素或修改字典的某个值),而不是重新绑定这个变量到另一个对象,那么你可以不使用global
关键字。但是,如果你试图重新绑定这个全局变量到一个新的对象,那么你需要使用global
关键字。
D. 全局变量在Python文件最外层声明时,语句前没有缩进
这个描述是正确的。在Python中,全局变量通常在文件的顶层(即没有缩进的地方)声明。如果变量在函数内部或循环内部声明,那么它将是局部变量或循环变量。
综上所述,错误的选项是A和B。但根据题目要求选择一个错误的选项,我们通常选择第一个错误的选项,所以正确答案是A。
###########################################################################
29、以下是某班5名同学的一-组个人信息:
学号、姓名、性别、年龄、身高、体重
Xs001、张红、女、18、168、55
Xs002、王丽丽、女、19、165、60
Xs003、李华、男、18、178、66
Xs004、赵亮、男、19、175、65
Xs005、张玲玲、女、18、160、50
采变量a存储以上信息用于统计分析,最适合的数据类型是()。
A.集合
B.字符串
C.列表
D.字典
标准答案给的C,我觉得D也可以。
存储多信息的数据,最适合的是列表数据类型,列表内含有多个元素每一个元素都是个单独的列表,第一个列表存储的是,信息的分类,每类作为一个元素,后续列表存储的的都是 同学的个人信息,将信息按照分类的顺序逐个存储即可。
# 存储多信息的数据
data = [
["学号", "姓名", "性别", "年龄", "身高", "体重"],
["Xs001", "张红", "女", 18, 168, 55],
["Xs002", "王丽丽", "女", 19, 165, 60],
["Xs003", "李华", "男", 18, 178, 66],
["Xs004", "赵亮", "男", 19, 175, 65],
["Xs005", "张玲玲", "女", 18, 160, 50]
]
#######################################################################
这个题目考验眼神,我觉得不是空格是连续连接,但是标准答案确实用空格连接。
########################################################################
字典的即pop( )方法是寻找字典中是否存在与第一个参数相同的键,存在即删除该键值对,并返回对应的值;不存在就返回第二个参数。举例论证。
在Python中,pop()
方法是用于删除字典中指定键对应的值,并返回该值。如果指定的键不存在,则可以提供一个可选的参数作为默认返回值。下面是一个例子来说明 pop()
方法的用法:
# 定义一个字典
my_dict = {"a": 1, "b": 2, "c": 3}
# 删除存在的键值对,并返回对应的值
value1 = my_dict.pop("a")
print(value1) # 输出: 1
# 删除不存在的键值对,并返回默认值
value2 = my_dict.pop("d", "Key not found")
print(value2) # 输出: Key not found
print(my_dict) # 输出: {'b': 2, 'c': 3}
在这个例子中:
- 我们先定义了一个字典
my_dict
。 - 使用
pop()
方法删除了存在的键值对"a": 1
,并返回了对应的值 1。 - 使用
pop()
方法删除了不存在的键值对"d"
,并返回了默认值 "Key not found"。 - 打印了删除键值对后的字典,结果为
{'b': 2, 'c': 3}
。
#########################################################################