内容正文:
编写说明:安徽省普通高校对口招生专业理论考试《计算机类考纲百套卷》,依据《安徽省普通高校对口招生计算机类专业课考试纲要》编写。每门课程均分三层训练:紧扣考纲 “掌握”“理解” 要求编写考点训练卷;强化知识交叉与场景关联,按考纲专题编专题训练卷;聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第16卷,按《计算机编程基础-Python语言》范围和要求编写。具体内容为:Python格式化输出:%格式化输出、format格式化输出、f字符串格式化输出。
安徽省《计算机考纲百套卷》 第16卷
《计算机编程基础-Python语言》
格式化输出 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共10小题,每题2分,共20分)
1.下列哪个选项的 format 用法会导致错误( )。
A. "{:.2f}".format(3.1415)
B. "{:5d}".format(3.14)
C. "{:05d}".format(7)
D. "{:>5}".format("abc")
【答案】B
【解析】
A:浮点数格式化为两位小数,正确;
B:3.14 是浮点数,但格式符 d 要求整数,会引发 ValueError;
C:整数格式化,右对齐宽度5填充0,正确;
D:字符串右对齐宽度5,正确。
2.执行print("{0:#>10},{1:#^5}".format(3, 8)) 的输出结果是( )。
A. ####3#####,##8##
B. 3#########,##8##
C. #########3,##8##
D. #########3,#8###
【答案】C
【解析】
{0:#>10}:索引0(值3),右对齐,宽度10,填充#。数字3占1位,左侧补9个#,得到 #########3。
{1:#^5}:索引1(值8),居中对齐,宽度5,填充#。数字8占1位,左右各补2个#,得到 ##8##。
两部分用逗号连接,输出 #########3,##8##。
3.下列代码的输出结果是( )。
a = 0.5
print("{:.0%}".format(a))
A. 50.0%
B. 0.5%
C. 50%
D. 0%
【答案】C
【解析】{:.0%}将小数转换为百分比,并保留0位小数。0.5 → 50%,无小数部分,输出 50%。
4.执行 print("{:0>5d}".format(12)) 的输出结果是( )。
A. 00012
B. 0012
C. 12
D. 12
【答案】A
【解析】{:0>5d}:右对齐,宽度5,用0填充。12占2位,左侧补3个0,得到 00012。
5.执行 print("{:0>8.2f}".format(5.6)) 的输出结果是( )。
A. 0005.60
B. 00005.60
C. 5.60
D. 0005.6
【答案】B
【解析】{:0>8.2f}:保留2位小数,5.6 格式化为 5.60(长度4),总宽度8,右对齐,左侧补4个0,得到 00005.60。
6.执行 print("{:,}".format(1234567)) 的输出结果是( )。
A. 1234567
B. 1,234,567
C. 1234,567
D. 123,456,7
【答案】B
【解析】千分位格式化,每三位加逗号,结果为 1,234,567。
7.执行 print("{0:*<6}".format(45)) 的输出结果是( )。
A. **45**
B. 45
C. 45****
D. ****45
【答案】C
【解析】{0:*<6}:左对齐,宽度6,填充*。45占2位,右侧补4个*,得 45****。
8.执行 print("{:*^8}".format(123))的输出结果是( )。
A. *123***
B. ***123**
C. **123**
D. **123***
【答案】D
【解析】{:*^8}:居中对齐,宽度8,填充*。123占3位,剩余5位,左右分配:左2右3,得 **123***。
9.执行以下代码,输出结果是( )。
num = 12345.6789
print("{:*>10,.2f}".format(num))
A. *12,345.68
B. ***12,345.68
C. 12,345.68*
D. 12,345.68
【答案】A
【解析】
{:*>10,.2f}:千分位,两位小数,右对齐,宽度10,填充*。
数值格式化为 12,345.68(长度9)
宽度10,右侧对齐,左侧补1个*,得 *12,345.68。
10.执行以下代码,输出结果是( )。
data = {'name': 'Alice', 'score': 92.5}
print("{0[name]:%^10} 成绩:{0[score]:*>6.1f}".format(data))
A. %%Alice%%% 成绩:*92.5*
B. %%Alice%%% 成绩:92.5**
C. %%Alice%%% 成绩:**92.5
D. Alice%%%%% 成绩:*92.5*
【答案】C
【解析】
{0[name]:%^10}:'Alice' 长度5,居中对齐,宽度10,填充%。左右填充:左2右3,得 %%Alice%%%。
{0[score]:*>6.1f}:92.5 保留1位小数得 92.5(长度4),右对齐,宽度6,填充*,左侧补2个*,得 **92.5。
输出 %%Alice%%% 成绩:**92.5。
2、 填空题(本大题共20小题,每题2分,共40分)
1.print("我的年纪:%d"%18)的结果为________。
【答案】我的年纪:18
【解析】%d 输出整数,直接替换。
2.print("我的名字:%s,我的年纪:%d"%("Tom",18))的结果为________。
【答案】我的名字:Tom,我的年纪:18
【解析】%s 和 %d 依次替换。
3.print("我的名字:%6s"%"name")的结果为________。(空格用"*"表示)
【答案】我的名字:**name
【解析】%6s 右对齐宽度6,"name" 占4位,前补2空格。
4.print("我的名字:%-6s"%"name")的结果为________。
【答案】我的名字:name**
【解析】%-6s 左对齐宽度6,后补2空格。
5.print("输出字母:%c"%69)的结果为________。
【答案】输出字母:E
【解析】ASCII码69对应字符 'E'。
6.a=5.527;print("浮点数:%.1f"%a)的结果为________。
【答案】浮点数:5.5
【解析】保留1位小数,四舍五入。
7.a=5.527;print("浮点数:%.2f"%a)的结果为________。
【答案】浮点数:5.53
【解析】保留2位小数,四舍五入。
8.a=5.527;print("浮点数:%6.2f"%a)的结果为________。(空格用"*"表示)
【答案】浮点数:**5.53
【解析】%6.2f 总宽6,两位小数,5.53 占4位,右对齐前补2空格。
9.name,age="Jack",18;print("我的名字:{},我的年龄:{}".format(name,age))的结果为________。
【答案】我的名字:Jack,我的年龄:18
【解析】{} 按顺序替换。
10.name,age="Jack",18;print("我的名字:{1},我的年龄:{0}".format(age,name)))的结果为________。
【答案】我的名字:Jack,我的年龄:18
【解析】索引0对应 age(18),索引1对应 name(Jack),按索引输出。
11.name,age="Jack",18;print("我的名字:{n},我的年龄:{a}".format(n=name,a=age)))的结果为________。
【答案】我的名字:Jack,我的年龄:18
【解析】使用关键字参数,n 和 a 分别对应。
12.a=6.137;print("圆的半径:{:.1f}".format(a)))的结果为________。
【答案】圆的半径:6.1
【解析】保留1位小数,四舍五入。
13.a=6.137;print("圆的半径:{:.2f}".format(a)))的结果为________。
【答案】圆的半径:6.14
【解析】保留2位小数,四舍五入。
14.a=6.137;print("圆的半径:{:7.2f}".format(a)))的结果为________。(空格用"*"表示)
【答案】圆的半径:***6.14
【解析】{:7.2f} 总宽7,两位小数,6.14 占4位,右对齐前补3空格。
15.a=6.137;print("圆的半径:{:#<7.2f}".format(a)))的结果为________。
【答案】圆的半径:6.14###
【解析】{:#<7.2f} 左对齐,填充#,宽度7,6.14 占4位,右侧补3个#。
16.a=6.137;print("圆的半径:{:#^7.2f}".format(a))的结果为________。
【答案】圆的半径:#6.14##
【解析】{:#^7.2f} 居中对齐,填充#,宽度7,6.14 占4位,剩余3位,左1右2,得 #6.14##。
17.a=6.137;print("圆的半径:{:#>7.2f}".format(a))的结果为________。
【答案】圆的半径:###6.14
【解析】{:#>7.2f} 右对齐,填充#,宽度7,6.14 占4位,左侧补3个#。
18.print("{}:{}:{:c}".format("2025", "03",98))的结果为________。
【答案】2025:03:b
【解析】{:c} 将整数98转换为ASCII字符 'b'。
19.执行 print("{:,}".format(9876543)) 的输出结果是 ________。
【答案】9,876,543
【解析】{:c} 将整数98转换为ASCII字符 'b'。
20.执行 print("{0:#<8}".format("hi")) 的输出结果是 ________。
【答案】hi######
【解析】{0:#<8} 左对齐,填充#,宽度8,"hi" 占2位,右侧补6个#。
3、 程序设计题(本大题共4小题,每题10分,共40分)
1. 学生成绩格式化输出
编写程序,输入一个学生的姓名、语文成绩、数学成绩(均为整数),输出如下格式(宽度要求):
姓名:张三(居中对齐,宽度10)
语文: 85(右对齐,宽度3)
数学: 92(右对齐,宽度3)
要求使用 % 格式化输出,并严格按照宽度和对齐方式输出。
【答案】
name = input()
chinese = int(input())
math = int(input())
print("姓名:%10s" % name.center(10))
print("语文:%3d" % chinese)
print("数学:%3d" % math)
【解析】
name.center(10) 将姓名居中对齐宽度10(若姓名长度不足,两边补空格),再用 %10s 输出(实际 %10s 右对齐,但已居中处理)。
语文、数学使用 %3d 右对齐宽度3。
2. 浮点数格式处理
编写程序,输入一个浮点数,输出其保留2位小数、宽度为8、右对齐、用*填充的格式,以及保留0位小数、宽度为5、居中对齐、用=填充的格式。两行输出。
【答案】
num = float(input())
print("{:*>8.2f}".format(num))
print("{:=^5.0f}".format(num))
【解析】
{:*>8.2f}:右对齐,填充*,宽度8,两位小数。
{:=^5.0f}:居中对齐,填充=,宽度5,零位小数(四舍五入取整)。
3.商品价格格式化
编写程序,输入商品名称(字符串)和单价(浮点数),输出一行,格式为:
商品:{名称},单价:{千分位格式,保留2位小数}元
例如输入 "苹果" 和 12345.678,输出 商品:苹果,单价:12,345.68元。要求使用 format 方法完成。
【答案】
name = input()
price = float(input())
print("商品:{},单价:{:,.2f}元".format(name, price))
【解析】
{:,.2f} 同时应用千分位分隔和保留两位小数。
4. 编写程序,定义变量 name = "小明", age = 12, height = 1.45,使用 f-string 输出一行,格式为:
姓名:小明,年龄:12岁,身高:1.45米
要求姓名左对齐宽度5,年龄右对齐宽度3,身高保留2位小数、居中对齐宽度6。
【答案】
name = "小明"
age = 12
height = 1.45
print(f"姓名:{name:<5},年龄:{age:>3}岁,身高:{height:^6.2f}米")
【解析】
{name:<5} 左对齐宽度5;
{age:>3} 右对齐宽度3;
{height:^6.2f} 居中对齐宽度6,保留两位小数。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:安徽省普通高校对口招生专业理论考试《计算机类考纲百套卷》,依据《安徽省普通高校对口招生计算机类专业课考试纲要》编写。每门课程均分三层训练:紧扣考纲 “掌握”“理解” 要求编写考点训练卷;强化知识交叉与场景关联,按考纲专题编专题训练卷;聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第16卷,按《计算机编程基础-Python语言》范围和要求编写。具体内容为:Python格式化输出:%格式化输出、format格式化输出、f字符串格式化输出。
安徽省《计算机考纲百套卷》 第16卷
《计算机编程基础-Python语言》
格式化输出 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共10小题,每题2分,共20分)
1.下列哪个选项的 format 用法会导致错误( )。
A. "{:.2f}".format(3.1415)
B. "{:5d}".format(3.14)
C. "{:05d}".format(7)
D. "{:>5}".format("abc")
2.执行print("{0:#>10},{1:#^5}".format(3, 8)) 的输出结果是( )。
A. ####3#####,##8##
B. 3#########,##8##
C. #########3,##8##
D. #########3,#8###
3.下列代码的输出结果是( )。
a = 0.5
print("{:.0%}".format(a))
A. 50.0%
B. 0.5%
C. 50%
D. 0%
4.执行 print("{:0>5d}".format(12)) 的输出结果是( )。
A. 00012
B. 0012
C. 12
D. 12
5.执行 print("{:0>8.2f}".format(5.6)) 的输出结果是( )。
A. 0005.60
B. 00005.60
C. 5.60
D. 0005.6
6.执行 print("{:,}".format(1234567)) 的输出结果是( )。
A. 1234567
B. 1,234,567
C. 1234,567
D. 123,456,7
7.执行 print("{0:*<6}".format(45)) 的输出结果是( )。
A. **45**
B. 45
C. 45****
D. ****45
8.执行 print("{:*^8}".format(123))的输出结果是( )。
A. *123***
B. ***123**
C. **123**
D. **123***
9.执行以下代码,输出结果是( )。
num = 12345.6789
print("{:*>10,.2f}".format(num))
A. *12,345.68
B. ***12,345.68
C. 12,345.68*
D. 12,345.68
10.执行以下代码,输出结果是( )。
data = {'name': 'Alice', 'score': 92.5}
print("{0[name]:%^10} 成绩:{0[score]:*>6.1f}".format(data))
A. %%Alice%%% 成绩:*92.5*
B. %%Alice%%% 成绩:92.5**
C. %%Alice%%% 成绩:**92.5
D. Alice%%%%% 成绩:*92.5*
2、 填空题(本大题共20小题,每题2分,共40分)
1.print("我的年纪:%d"%18)的结果为________。
2.print("我的名字:%s,我的年纪:%d"%("Tom",18))的结果为________。
3.print("我的名字:%6s"%"name")的结果为________。(空格用"*"表示)
4.print("我的名字:%-6s"%"name")的结果为________。
5.print("输出字母:%c"%69)的结果为________。
6.a=5.527;print("浮点数:%.1f"%a)的结果为________。
7.a=5.527;print("浮点数:%.2f"%a)的结果为________。
8.a=5.527;print("浮点数:%6.2f"%a)的结果为________。(空格用"*"表示)
9.name,age="Jack",18;print("我的名字:{},我的年龄:{}".format(name,age))的结果为________。
10.name,age="Jack",18;print("我的名字:{1},我的年龄:{0}".format(age,name)))的结果为________。
11.name,age="Jack",18;print("我的名字:{n},我的年龄:{a}".format(n=name,a=age)))的结果为________。
12.a=6.137;print("圆的半径:{:.1f}".format(a)))的结果为________。
13.a=6.137;print("圆的半径:{:.2f}".format(a)))的结果为________。
14.a=6.137;print("圆的半径:{:7.2f}".format(a)))的结果为________。(空格用"*"表示)
15.a=6.137;print("圆的半径:{:#<7.2f}".format(a)))的结果为________。
16.a=6.137;print("圆的半径:{:#^7.2f}".format(a))的结果为________。
17.a=6.137;print("圆的半径:{:#>7.2f}".format(a))的结果为________。
18.print("{}:{}:{:c}".format("2025", "03",98))的结果为________。
19.执行 print("{:,}".format(9876543)) 的输出结果是 ________。
20.执行 print("{0:#<8}".format("hi")) 的输出结果是 ________。
3、 程序设计题(本大题共4小题,每题10分,共40分)
1.学生成绩格式化输出
编写程序,输入一个学生的姓名、语文成绩、数学成绩(均为整数),输出如下格式(宽度要求):
姓名:张三(居中对齐,宽度10)
语文: 85(右对齐,宽度3)
数学: 92(右对齐,宽度3)
要求使用 % 格式化输出,并严格按照宽度和对齐方式输出。
2. 浮点数格式处理
编写程序,输入一个浮点数,输出其保留2位小数、宽度为8、右对齐、用*填充的格式,以及保留0位小数、宽度为5、居中对齐、用=填充的格式。两行输出。
3.商品价格格式化
编写程序,输入商品名称(字符串)和单价(浮点数),输出一行,格式为:
商品:{名称},单价:{千分位格式,保留2位小数}元
例如输入 "苹果" 和 12345.678,输出 商品:苹果,单价:12,345.68元。要求使用 format 方法完成。
4. 编写程序,定义变量 name = "小明", age = 12, height = 1.45,使用 f-string 输出一行,格式为:
姓名:小明,年龄:12岁,身高:1.45米
要求姓名左对齐宽度5,年龄右对齐宽度3,身高保留2位小数、居中对齐宽度6。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$