第三部分 操作题专练
1.打开“xl\w1”文件夹中的文件“高一(3)班体育入学测试成绩统计表.xlsx”,进行以下操作并保存:
(1)将标题行A1:F1单元格区域合并居中,并设置字体为“楷体”、字号为18磅、颜色为绿色;
(2)用函数计算每位同学的总分,填入F3:F53 单元格;
(3)将A2:F53 区域的数值按“性别”升序排列;
(4)将A2:F53 区域的数值按“性别”分类汇总“总分”的平均值;
(5)保存文件并关闭WPS。
2.打开“xl\w2”文件夹中的文件“学生成绩统计表.xlsx”, 按照要求完成以下操作并保存,效果见下图。
(1)将标题行A1:F1单元格区域“合并居中”,并设置字体为“楷体”、字号为18、字体颜色为绿色;
(2)计算每个学生按百分制计的总分置于“总分(按百分制计算)”列,其中“总分(按百分制计算)=数学(满分150分)/150*100+物理+语文(满分150分)/150*100”,(数值型,保留小数点后1位)。
(3) 将A2:F32 区域的数值按“总分(按百分制计算)”降序排列;
(4)设置所有数据区域水平居中对齐,给所有数据区域(不包括标题行)添加内外边框线;
(5)保存文件并关闭WPS。
3.打开“xl\w3”文件夹中的文件“体质健康表.xlsx”, 进行以下操作后并保存。
(1) 将Sheet1 更名为“体质健康表”,合并A1至G1单元格并使其水平对齐方式为居中,标题设置为隶书,字号22,添加下划线;
(2)在第12行输入一行记录:“汪婷、2005-7-20、166、48.5、5.1、5”;
(3)利用函数计算每位女生的平均视力值,填入相应单元格中,结果设为数值型,保留1位
小数;
(4)按“身高(cm)”列升序排列;
(5)保存文件并关闭WPS。
4.打开“xl\w4”文件夹中的文件“成绩处理表.xlsx”, 进行以下操作并保存:
(1)利用公式法计算每个同学的三门总分和平均分,均保留1位小数;
(2)用函数法计算“语文、数学、英语以及总分”的最高分和最低分;
(3)按照“总分”将成绩从高到低进行排序;
(4)在B2输入字段,名为“名次”,填充相应名次,格式为:1 、2 、3……;
(5)保存文件并关闭WPS。
5.打开“xl\w5”文件夹中的文件“交通信息表.xlsx”, 进行以下操作并保存:
(1)将表头区域(A1:D1) 合并居中,并将标题字体设为“黑体”、加粗,字号为16;
(2)设置所有数据区域水平居中对齐;
(3)按“停车延误”时间对全国主要信控路口数据进行降序排列;
(4)将“排名”列内容补充完整(格式:1、2、3、 …… );
(5)保存文件并关闭WPS。
6.小华假期准备外出旅游,请帮他对文件“xl\w6\ 航班时间表.xlsx”进行下列处理并保存,以方便查看。
(1)将单元格区域E3:E24 的数字设为水平居中;
(2)互换表中“机型”列与“起飞城市”列的位置;
(3)以“起飞城市”为主要关键字,“离港时间”为次要关键字对数据进行递增排序。
7.打开“xl\w7”文件夹中的文件“科技成果.xlsx”, 完成以下操作并保存。
(1)将单元格A1:E1 合并居中,并设置单元格字体字号16,加粗;
(2)用函数计算历年省和国家科技奖励总数,分别填写到单元格D27、E27中 ;
(3)将单元格A2:E27 设置水平居中;将单元格A2:E3 填充颜色设置为“浅蓝”;
(4)选择单元格A4:A25 、C4:C25 作为数据源,绘制“簇状柱形图”,设置图表标题为“当年认定高新技术企业数量”,“数据标签”设置为“数据标签外”(见下图)。
(5)保存文件并关闭WPS。
8.打开“xl\w8”文件夹中的文件“各分店业绩报表.xlsx”, 进行以下操作并保存。
(1)将A1:G1 区域合并居中,字体设为黑体、字号14、蓝色;
(2)在单元格区域A3:A12 中,依次录入店铺编号“001,002,003……010”;
(3)使用函数求出C13:D13 区域的“合计”;
(4)差值=实际业绩-目标业绩,同比增长率=(实际业绩-去年同期业绩)/去年同期业绩,按照公式求出E列的“差值”和G列的“同比增长率”,其中G列设置为百分比的形式,并保留2位小数;
(5)按照“同比增长率”降序排序;
(6)保存文件并关闭WPS。
9.打开“xl\w9”文件夹中的文件“学生成绩.xlsx”,进行以下操作并保存:
(1)用函数求所有学生的总分;
(2)按语文成绩降序排序;
(3)用函数求各学科平均分,保留一位小数;
(4)设置表头(第一行)文字的字体颜色为蓝色;
(5)保存文件并关闭WPS。
10.打开“xl\w10”文件夹中的文件“常见食物热量及蛋白质含量表.xlsx”,进行以下操作并保存:
(1)合并单元格A1:D1,文本对齐方式水平居中,在该处输入表格标题“常见食物热量及蛋白质含量表”,字体设置为“黑体”,14,红色;
(2)对所有食物记录进行排序,按“类别”为主要关键字升序,“热量(千卡/50克)”为次要关键字降序排列;
(3)将所有食物,按“类别”分类汇总“热量(千卡/50克)”和“蛋白质(克/50克)”两项,汇总方式为平均值;
(4)保存文件并关闭WPS。
Access操作题
1.打开“xl\A1”文件夹中的文件“图书借阅记录.accdb”, 按如下要求修改“借出”数据表并保存。
(1)“字段1”改成“编号”,字段大小改为10;
(2)“字段2”改成“书名”,字段大小改为20;
(3)“字段3”改成“日期”,格式:长日期;
(4)将“编号”字段设为主键;
(5)输入一条记录:COMPUTER,Python基本语法,2020年9月10日。
2.打开“xl\A2” 文件夹中的文件“教师信息管理.accdb”, 进行以下操作后并保存。
(1)建立数据表"teacher",表结构如下:
字段名称 数据类型 要求
编号 短文本 字段大小:8
姓名 短文本 字段大小:6
性别 短文本 字段大小:1
年龄 数字 字段大小:整型
工作时间 日期/时间 格式:短日期
职称 短文本 字段大小:6
退休否 是/否
(2)设置“编号”字段为主键;
(3)在"teacher"表中输入以下2条记录:
编号 姓名 性别 年龄 工作时间 职称 是否退休
92016 李莉 女 68 1980-9-6 教授 是
3.打开“xl\A3”文件夹中的文件“行程信息.accdb”,完成下列任务:
(1)在“旅行线路表”中增加“旅行天数”字段,类型为“数字”(整型),参考“行程安排”表中的信息完善“旅行天数”;
(2)增加新的旅行线路,信息如下:
字段名 出行编号 旅行城市 交通工具 人均费用 旅行天数
字段值 202302 贵州 飞机+巴士 3 000 4
(3)删除“行程安排”表中的“旅行城市”字段;
(4)保存数据库文件并关闭相应软件。
4.打开“xL/A4”文件夹中的文件“购书记录.accdb”,按下列要求完成操作并保存。
(1)建立表“必读书目”,表结构如下:
字段名称 数据类型 要求
编号 数字 长整型
书名 短文本 字段大小30
作者 短文本 字段大小20
出版社 长文本
现货 是/否
(2)将字段“编号”设置为主键;
(3)在“必读书目”表中输入以下2条记录:
编号 书名 作者 出版社 现货
1001 三国演义 罗贯中 人民文学出版社 √
1101 呐喊 鲁迅 人民文学出版社 √
5.打开“xl\A5”文件夹中的文件“图书管理.accdb”,进行以下操作后并保存。
(1)将数据库中的“用户”表重命名为“会员信息”;
(2)将“书库”表中的“作者”字段的字段大小设为20;
(3)将“书库”表的记录按“数量”降序排列。
6.打开“xl\A6”文件夹中的文件“经典电影.accdb”,进行以下操作后并保存。
(1)将数据表“电影基本情况”重命名为“经典电影排行”;
(2)将数据表“经典电影排行”中的“影片ID”字段设置为主键;
(3)删除数据表“经典电影排行”中“影片ID”为7的一条记录;
(4)将表中记录按“评分”降序排列。
7.“xl\A7”文件夹中的文件“篮球常规赛.acch”中存储了2019-2020年CBA篮球常规赛事均分数据,请打开该文件对数据表进行如下操作并保存。
(1)在“球队信息”数据表中,删除“简介”字段,设置“球队编号”为主键;
(2)将“2019_2020赛季”表中球队编号为“001”的均分“193.5”改为“93.5”;
(3)将“2019_2020赛季”表按“均分”降序排列。
8.打 开“xl\A8”文件夹中的文件“高一年级学生.accdb”,进行如下操作并保存。
(1)打开“新生”数据表,添加如下字段:
字段名称 数据类型 要求
性别 短文本 字段大小:1
出生日期 日期/时间 格式:长日期
是否特长生 是/否
(2)设置“学号”为主键;
(3)录入如下2条记录。
学号 班级 姓名 性别 出生日期 是否特长生
202101001 1 张三 男 2006年2月21日 √
202103006 3 李四 女 2006年5月8日
9.打开“xl\A9”文件夹中的文件“图书馆书目.accdb”,建立表“书库信息”,表结构如下:
字段名称 数据类型 要求
编号 短文木 字段大小为8
教材名称 短文本 字段大小为30
单价 数字 单精度型,小数位数2
库存数量 数字 整型
入库时间 日期/时间 短日期
需要重印否 是/否
简介 长文本
按以上要求完成操作后保存并关闭应用软件。
10.打开文件“xl\A10\用户数据库.accdb”,通过设计视图修改数据表“用户”的字段属性,按要求完成下列操作并保存,要求:
(1)字段1改成“姓名”,字段大小改为10;
(2)字段2改成“密码”,字段大小改为20,输入掩码改成“密码”;
(3)字段3改成“用户ID”,字段大小改为20;
(4)输入一条记录:陈珠珠,123456,admin。
Python操作题
顺序结构:
1.输入一个正方体的边长,求该正方体的体积。打开“xl\python\p1”文件夹中的文件“正方体体积.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
a=int( ① ("请输入正方形边长:"))
v=a ② 3
print("体积为:", ③ )
2.一种细菌的繁殖速度是每天成倍增长。例如,第一天有10个,第二天就变成20个,第三天变成40个……。输入繁殖天数,输出细菌总量。打开“xl\python\p2”文件夹中的文件“细菌繁殖.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
n= ① (input("请输入繁殖天数:"))
s=10 # 细菌个数初值
s=10*2**( ② )
print("细菌总量为:", ③ )
3.自由落体运动位移与时间的关系公式是 h=(gt2)/2,输入任意的高度值,计算出小球落地的时间。
打开“xl\python\p3”文件夹中的文件“小球落地时间.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
g=9.8 # 重力加速度g以9.8m/s2
h= ① (input("请输入小球落地的初始高度:")) #小球初始高度值h
t= ② #t为小球落地时间
print("小球落地的时间为:" , ③ )
4.菜价计算器:奶奶年纪大了,去菜场买菜总是精打细算,但又常常出错,小赵为奶奶在手机上设计了一款简易计算器。请根据要求,打开“xl\python\p4”文件夹中的文件“菜价计算器.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
a=float( ① ("请输入每千克菜的价格(元):"))
b=float(input("请输入重量(千克):"))
c= ②
print("本次总价为:", ③ , "元")
5.输入一个三位正整数,计算这个三位数的各数位之和并输出。打开“xl\python\p5”文件夹中的文件“数字之和.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
n=int(input("输入一个三位整数"))
a= ① //100 # a是百位数
b=n//10 ② 10 # b是十位数
c=n% ③ # c是个位数
n=a+b+c
print(n)
6.完善下列“已知圆半径r厘米,求圆周长和面积”的程序,结果保留两位小数。打开“xl\python\p6”文件夹中的文件“圆周长和面积.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
import math
r=float(input("请输入圆的半径:"))
l=2*math.pi* ①
s=math.pi*r*r
print("半径为", r, "的圆周长为:", round( ② , 2), "厘米")
print("半径为", r, "的圆面积为:", round( ③ , 2), "平方厘米")
分支结构:
7.输入一个正整数x,判断其奇偶性。打开“xl\python\p7”文件夹中的文件“奇偶性.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
x= ① (input("请输入一个正整数:"))
if ② :
print(x, "是偶数。")
③ :
print(x, "是奇数。")
8.以下是计算运动心率的公式:
男性最适宜运动心率=(220-年龄-安静心率)*(60%~80%)+安静心率
女性最适宜运动心率=(210-年龄-安静心率)*(60%~80%)+安静心率
输入年龄、性别、安静心率,计算最适宜的运动心率范围。打开“xl\python\p8”文件夹中的文件“运动心率.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
age=int(input("请输入年龄:"))
HRrest=int(input("请输入安静心率:"))
gender=input("请输入性别(男/女):")
if gender==" ① ":
n=220
else:
n=210
low=(n-age-HRrest)*0.6+HRrest
high=(n-age-HRrest)*0.8+HRrest
print("最适宜的心率是:", ② , "~", ③ )
9.某共享单车的单次骑行收费规则为:1.5元/30分钟(不满30分钟的也按30分钟计算),同时如果停车超出停车范围,加收调度费20元。例如,骑行31分钟且没有超出停车范围,则收费3.0元,超出范围则收费23元。实现共享单车的按次收费方案。打开“xl\python\p9”文件夹中的文件“共享单车.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
t=int(input("请输入骑行时间(分钟):"))
c=input("请输入是否超出停车范围(是/否):")
if (t%30== ① ): # 时间正好是30分钟的整数倍
m=t//30*1.5 # 计算停车费用
else:
m=(t//30+ ② )*1.5
if c== "是": # 超过停车范围的加收20元
m= ③
print("本次骑行应付款为:", m, "元。")
10.进入某学习资源平台需要输入正确的用户名、密码才能浏览,如果验证密码正确则允许浏览,否则显示身份验证失败,测试的用户名为admin,密码为112233。打开“xl\python\p10”文件夹中的文件“身份验证.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
① =input("请输入您的用户名:")
password=input("请输入您的密码:")
# 用户名是admin且密码是112233则身份验证成功,否则身份验证失败
if name=="admin" and ② :
print("身份验证成功!")
③ :
print("身份验证失败!") #身份验证失败!
11.爸爸和明明玩数字盲盒游戏,盲盒里有1-6六个数字的球,他们约定谁拿出的数字大,谁就赢。打开“xl\python\p11”文件夹中的文件“数字盲盒游戏.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
D=int(input("爸爸的数字是(1-6):"))
M= ① (input("明明的数字是(1-6):"))
if (D>M):
print("爸爸赢啦!")
elif ( ② ):
print("明明赢啦!")
③ :
print("平局啦!")
12.关于火车票儿童票价,国家规定:一名成年人旅客可以免费携带一名身高不足1.2米的儿童。儿童身高为1.2~1.5米的,须购买儿童票(即票价是成年人票价的一半);超过1.5米的,须购买全价座票。请完善下面程序实现以上功能。打开“xl\python\p12”文件夹中的文件“购买车票.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
#编程求一名成年旅客携带一名儿童乘坐火车的总票价
ticket=float(input("请输入成人火车票价:"))
height=float(input("输入孩子的身高(米):"))
if height ① 1.2:
total=ticket
② height<=1.5:
total=ticket*1.5
else:
total= ③
print("一名成人和一名儿童,总票价为:", ④ )
13.某公司销售部门需要将本部门的每个员工的年终绩效总分换算成“优秀、合格、不合格”三个等级,其中90分(包含90分)以上为“优秀”,大于等于60分并且小于90分为“合格”,小于60分为“不合格”。编程实现输入一个员工的年终绩效总分(可能带小数),输出相应的等级。
打开“xl\python\p13”文件夹中的文件“年终绩效.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
zf= ① (input("请输入绩效总分:"))
if ② :
print("优秀")
elif zf>=60 :
print("合格")
else:
③
14.求解如下分段函数的值。打开文件“xl\python\p14”文件夹中的文件“分段函数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
y=
x=float(input("请输入x的值:"))
if ① :
y=-2*x-4
② x<10:
y=(x+2)**0.5
else:
y=2**(x-1)
print( ③ )
15.学校课外活动评价分为A、B、C、D四个等第,输入等第,输出相应的评语,A是“很棒”,B是“做得好”,C是“您通过了”,D是“继续加油”。如果输入其他字符,则显示“无效的成绩”。打开“xl\python\p15”文件夹中的文件“课外活动.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
grade= ① ("请输入成绩等第:")
if grade== "A":
print("很棒")
② grade== "B":
print("做得好")
elif grade== "C":
print("您通过了")
elif ③ :
print("继续加油")
else:
print("无效的成绩")
16.区间测速计算器:输入区间距离、区间最高平均限速与行驶实际所用时间,显示在区间内是否超速。打开“xl\python\p16”文件夹中的文件“区间测速计算器.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
#区间测速计算器
d=float(input("请输入测速区间距离(千米):"))
v1=float(input("请输入该区间平均最高时速(千米/每小时):"))
t=float(input("请输入您在此区间的行驶时间(分钟):"))
v2= ① # 计算平均时速
if ② : # 行驶速度大于限速算超速
print("您超速了,安全行驶很重要!")
③ :
print("恭喜您,未超速!")
17.华氏度(℉):温度的一种度量单位。“华氏温标”是经验温标之一。寒暑表中通常有两个刻度:摄氏度(记为℃)和华氏度(记为℉)。包括我国在内的世界上很多国家都使用摄氏度,美国和其他一些英语国家使用华氏度而较少使用摄氏度。本程序实现的功能是当你输入cf表示摄氏转华氏,然后你输入的是摄氏温度值,并回车,根据换算公式就打印出华氏温度值。fc表示华氏转摄氏。然后你输入的是华氏温度值,再回车,就可打印出对应的摄氏温度值。华氏度与摄氏度的换算:
华氏度= 摄氏度×1.8+32
摄氏度=(华氏度-32)÷1.8
打开“xl\python\p17”文件夹中的文件“华氏度与摄氏度的换算.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
具体代码如下:
action=input("输入转换方式") # 输入cf表示摄氏转华氏,fc表示华氏转摄氏
data= ① (input("输入温度值"))
if action=='cf':
f=data*1.8+32
print(f)
else:
c=( ② )/1.8
print( ③ )
18.简易门禁系统:模拟进门欢迎程序,要求只有提前预约(输入Y或者y)才能进入,此外任何情况都需要改天预约。打开“xl\python\p18”文件夹中的文件“预约.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
#简易门禁系统
xm=input("您叫什么名字 ")
print("欢迎您!", ① ) # 欢迎来访者
app=input("您提前预约了吗 (Y/N)")
if app== "Y" ② app== "y": # 输入"Y"或者"y"
print("您请进!")
③ :
print("请您预约后再来,谢谢!")
19.体育课上全班女生进行60米短跑速度测试,优秀的成绩为6.5秒以内(包括6.5s,下面都是包括),良好的成绩为7.5秒以内,及格成绩为9.5以内,超过9.5秒即为不及格。
打开“xl\python\p19”文件夹中的文件“短跑测试.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。请完善下面程序实现以上功能。
x= ① (input("请输入短跑成绩:"))
if ② :
print("优秀")
elif x <= 7.5:
print("良好")
elif x <= 9.5:
print("及格")
③ :
print( ④ )
20.判断给定的三个正整数是否相邻,相邻输出“TRUE”,不相邻输出“FALSE”(是否相邻是指每个数之间差1,输入不保证大小有序)。打开“xl\python\p20”文件夹中的文件“判断相邻整数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。请完善下面程序实现以上功能。
a=int(input("输入第一个正整数"))
b=int(input("输入第二个正整数"))
c=int(input("输入第三个正整数"))
if a>b:
a, b=b, a # 实现a,b两个变量的值进行交换
if a>c:
① =c, a # 实现a,c两个变量的值进行交换
if b>c:
b,c= ② # 实现b,c两个变量的值进行交换
if a+1==b ③ b+1==c: # 判断三个数是否相邻
print("TRUE")
else:
print("FALSE")
21.某校组织春游,共有学生n人,租用的大巴每辆能坐m人,规定每辆车必须留一个座位给老师,试编写一个程序,输入学生人数和大巴车能乘坐的人数后,程序输出需要租车的数量。打开“xl\python\p21”文件夹中的文件“春游.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。请完善下面程序实现以上功能。
n=int(input("请输入学生人数:"))
m=int(input("请输入每辆车可以坐的人数:"))
if n ① (m-1)==0:
print("需要租车", n// ② , "辆")
else:
print("需要租车", ③ , "辆")
for循环结构:
22.一个正整数的阶乘是所有小于及等于该数的正整数的积,并且0的阶乘为1,即n!=1×2×3×…×(n-1)×n。现求正整数n的阶乘。打开“xl\python\p22”文件夹中的文件“求阶乘.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。请完善下面程序实现以上功能。
num=int(input("请输入一个数字: "))
① #赋初值
for i in range(1, ② ):
f= ③
print("%d 的阶乘为 %d" % (num, f))
23.输入两个正整数a和b,以空格间隔,将正整数a和b之间(包括a和b)能被17整除的数累加,输出累加的结果。例如输入“10 51”,输出“102”。打开“xl\python\p23”文件夹中的文件“累加器.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。请完善下面程序实现以上功能。
a,b=map(int,input( ).split( )) #输入a和b,以空格隔开
s= ① #给累加变量赋初值
for i in range(a, ② ):
if ③ == 0:
s+= ④
print(s)
24.打印以下图形。打开“xl\python\p24”文件夹中的文件“打印图形.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。请完善下面程序实现以上功能。
- - - -*
- - -**
- -***
-****
for i in ① (4): #控制打印行数
print("-" * ( ② ) + "*"*( ③ ))
25.完善程序:输入n个整数,将其中的奇数、偶数分别求和。打开文件“xl\python\p25”文件夹中的文件“奇数偶数求和.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
n=int(input("请输入要计算整数的个数:"))
s1=s2= ① #s1表示偶数的和,s2表示奇数的和
for i in range(1,n+1):
a=int(input("请输入一个整数:"))
if ② ==0: #如果是偶数
s1=s1+a
else:
s2= ③
print("偶数和为:",s1)
print("奇数和为:",s2)
26.学生体检时需要测量身高,平均身高是衡量一个地区学生体质的重要指标。下列程序的功能是通过键盘输入学生的人数和每位学生的身高,求这n个学生的平均身高。打开“xl\python\p26”文件夹中的文件“平均身高.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
n=int(input("请输入学生人数:"))
s= ①
for i in range(n):
h=float(input("请输入学生的身高(米):"))
② =s+h
s= ③ # 平均身高
print("平均身高(米)为:", s)
27.如果将5万元存入银行,选择一年定期自动转存的存款方式,假设5年内利率没有发生变化,均为1.25%,问:5年后到期存款总额为多少 打开“xl\python\p27”文件夹中的文件“存款.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
rate=0.0125 # 给利率变量赋值
money=50000 # 给存款总额变量赋初值(单位:元)
for year in range(1, ① ):
money= ② *(1+rate) # 计算每年新的存款总额
print("五年后的存款总额为:", ③ , "元") # 输出结果
28.数学家高斯在很小的时候就能快速算出1+2+3+4+……+100的结果是5050,可以用编程的方式验证结果。打开“xl\python\p28”文件夹中的文件“求和.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
s= ① #设置s的初始值
for i in range(1, ② ): # 只需填一个数字
s+= ③ # 求前i个数之和
print("1+2+3+4+……+100的结果是:", s)
29.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少路程 第10次反弹多高 打开“xl\python\p29”文件夹中的文件“小球反弹高度.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
s=100 # 球下落的高度
h=s/ ① # 球第一次的反弹高度
for n in range(9):
s=s+2*h
h= ② # 反弹回原来高度的一半
print("总共经过路程:", ③ )
print("第10次反弹高度:", h)
30.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:请输出全部水仙花数。打开“xl\python\p30”文件夹中的文件“水仙花数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
print("所有水仙花数:")
for x in range(100, ① ):
b=x// ② # 百位
s=(x//10)%10 # 十位
g=x% ③ # 个位
if x==(b**3+s**3+g**3):
print(x)
31.设计程序,输入一个字符串,编程将字符串中的字符依次输出,最后计算输出此字符串的长度。打开“xl\python\p31”文件夹中的文件“字符串.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
zfc= ① ("请输入一个字符串: ")
count=0
for i in ② :
count += ③
print(i)
print("您输入的字符串长度是:",count)
32.寻找100以内所有能被2整除,且不能被3整除的数字,统计并输出这些数字的总数量。打开“xl\python\p32”文件夹中的文件“统计数字数量.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
s= ① #定义统计数量初始值
for i in range(1, ② ): #此处只需填一个数
if i%2==0 and ③ : #请使用求余运算符进行判断
s=s+1
print( ④ )
while循环结构:
33.统计一个整数的所有数位上数字“3”出现的次数,例如:3201中3的个数为1,-303173中3的个数为3。打开“xl\python\p33”文件夹中的文件“统计次数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
n=abs(int(input( ))) # 输入一个整数
s= ① # s表示“3”的个数
while n>0:
a=n ② 10 # 取个位数
if a==3:
③
n=n//10
print(s)
34.密码锁的设计旨在让出行变得更加便捷,摆脱携带钥匙的烦恼。比如,密码设置为“202501”,使其仅在完全匹配密码“202501”时才打开锁,但是如果连续3次输入都错误就会被锁定。打开“xl\python\p34”文件夹中的文件“密码锁.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
password="202501"#设初始密码为202501
n=0
while n<3:
yours=input("请输入密码:")
n+=l
if password ① yours:
print("欢迎回家!")
② #跳出循环
③ :
print("密码错误!")
if n==3:
print("错误3次,请稍后再试")
35.骰子六个面上分别是数字1~6。设计模拟掷骰子游戏。反复掷,掷到6为止,统计掷骰子次数。
打开“xl\python\p35”文件夹中的文件“掷骰子.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
import random
res=0 #骰子的数字
i= ① #投掷的次数
while ② :
res=random.randint(1,6)
print(res)
③ #投掷的次数加1
print("一共掷了",i,"次")
36.小李为自己制定了一项背单词计划,第一天背1个单词,以后每天都比前一天多背1个单词,他想知道用30天总共可以背多少个单词。打开“xl\python\p36”文件夹中的文件“背单词计划.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
sum=0
index=1 #记录背单词的天数
n=30
while ① <=n:
sum= ② +index
index= ③
print("记住的单词总量是", sum)
37.王明同学为希望工程捐款。第一个月捐款1元,第二个月捐款2元,以后每个月都在前一个月的基础上增加1元。至少需要多少个月捐款总额达1 000元 打开“xl\python\p37”文件夹中的文件“捐款.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
sum= ① # 给捐款总额变量赋初值(单位:元)
m=1 # 给捐款需要的月份赋初值
while ② :
sum+= ③ #计算每月新的捐款总额
m+=1 #捐款月份加1
print("至少需要", m, "个月完成捐款任务,共捐款", sum, "元") # 输出结果
38.以下是一个猜数字游戏:系统随机生成一个1~100的数字,用户共有5次机会猜,如果用户猜测数字大于系统给出的数字,显示“大了”,如果用户猜测数字小于系统给出的数字,显示“小了”,如果用户猜测的数字等于系统给出的数字,显示“恭喜猜中”,并退出循环。打开“xl\python\p38”文件夹中的文件“猜数字游戏.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
import random
num= ① .randint(1, 100)
i=1
while i<=5:
ans=int(input("请猜数:"))
if ② :
print("大了,还剩", 5-i, "次机会")
elif ans print("小了,还剩", 5-i, "次机会")
else:
print("恭喜猜中!!!")
break
i=i+ ③
print("正确答案是:", num)
39.考拉兹猜想又称为3×n+1猜想,指的是对于给定的每一个正整数n,经过下列有限次变换后,最终都能变为1。如果它是偶数,则对它除以2;如果它是奇数,则对它乘3再加1;……如此循环,直到得到1为止。
例如n=6,根据上述规则需要8次变换后得到1,变换过程:6→3→10→5→16→8→4→2→1。
任意输入一个正整数,验证考拉兹猜想,并输出变换次数。打开“xl\python\p39”文件夹中的文件“变换次数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
n=int(input("n=")) # 输入正整数n
cnt=0 # 记录变换次数
while n> ① :
cnt=cnt+1 # 变换次数cnt累加
if n%2==0:
n//= ②
else:
n=3*n+1
print( ③ ) # 输出变换次数
40.一种放射性物质不断发生衰变,每经过一年剩余的质量约为上一年的84%,编写程序求最快经过多少年,剩余的质量低于原来的一半 打开“xl\python\p40”文件夹中的文件“物质质量.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
w=float(input("输入放射性物质的质量:"))
n= ① /2 # n为该物质质量的一半
cnt=0 # 年数
while w>=n:
w*= ②
cnt+= ③
print(cnt)
41.请你编写一个计数器程序,要求每行输入一个字符串,遇到字符串“#”结束输入,统计输入了多少个字符串(不含“#”)并输出结果。例如运行结果如下。打开“xl\python\p41”文件夹中的文件“计数器.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
red
green
blue
#
3
a=input( ) #输入一个字符串
cnt= ① #计数器
while a!= ② :
cnt+= ③
a=input( )
print(cnt)
42.编写一个计数器程序,要求反复输入一位数字,遇到数字0结束输入,统计输入了多少个数字(不含0)并输出结果。打开“xl\python\p42”文件夹中的文件“统计数字个数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
a=int(input("请输入一个数字:"))
ans= ① # ans用来统计数字个数
while ② :
ans+= ③
a=int(input("请输入一个数字"))
print(ans)
43.将十进制正整数转换成二进制数。打开“xl\python\p43”文件夹中的文件“进制转换.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
n=int(input("请输入一个十进制正整数:"))
result=[ ] # 存放余数的列表
while n>0:
result.append(n ① 2) # 向列表中追加整除2的余数
n= ② # 整除2
result.reverse( ) # 将列表元素反向排列
for i in result:
print( ③ , end="") # 输出二进制数
函数:
44.回文数判断:如果一个正整数n,若它的各位数字反向排列所得自然数n1与它本身相等,则n为回文数。例如,12321为回文数。
阅读下列程序段,并完善程序。打开“xl\python\p44”文件夹中的文件“回文数判断.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def rev(x):
m=x
n1= ①
while ② :
n1=n1*10+( ③ )
x= ④
if ⑤ :
return "是回文数。"
else:
return "不是回文数。"
n=int(input("请输入任意正整数:"))
print (n, rev (n) )
45.如果一个大于1的自然数,恰好等于它的因子之和(不含本身),如28=1+2+4+7+14,则该数被称为完全数。功能:请输出100以内所有的完全数。
打开“xl\python\p45”文件夹中的文件“完全数1.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def wanquanshu(x):
s= ①
for i in range(1, ② ):
if x%i==0:
s=s+i
if ③ :
print(x)
for j in range(2,101):
wanquanshu( ④ )
46.求两个数的最大公约数。请完善程序使得程序接收用户输入的两个整数,然后计算并打印它们的最大公约数。打开“xl\python\p46”文件夹中的文件“最大公约数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
① gcd(a,b): # 定义gcd函数,接收两个参数 a 和 b
while b!=0:
#计算a对b的余数,并将结果存储在temp 变量中
temp=a%b
a=b
b=temp
#当b为0时,循环结束,此时a即为最大公约数
return a
#通过输入语句获取两个整数
num1= ② (input("请输入第一个数:"))
num2=int(input("请输入第二个数:"))
print("最大公约数是", ③ (num1,num2)) # 调用gcd函数并打印结果
47.在自然界中,有不少规律与欧拉常数e(约等于2.71828)有关,例如生物的生长、繁殖和衰变规律等。编程实现计算e的近似值。e=1+1/1!+1/2!+1/3!+1/4!+…
阅读下列程序段,并完善程序。打开“xl\python\p47”文件夹中的文件“e的近似值.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def fun( ① ):
s=1
e= ②
for i in range(1,n+1):
s= ③
e+= ④
return e
m=int(input("请输入正整数:"))
print("%.5f" ⑤ )
48.数列a中的数据如下,1、2、3、5、8、13、……,请观察数列规律。用自定义函数实现以下功能:从键盘上读入项数n,输出该项对应的数值。打开“xl\python\p48”文件夹中的文件“数列递归.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def a( ① )
if x==1:
an=1
elif x==2:
an=2
else:
an=a(x-1)+ ②
return an
n=int(input("请输入项数n: "))
print(a( ③ ))
49.利用海伦公式求解三角形面积。已知a,b,c为三角形的三条边长,p为三角形的半周长,即p=(a+b+c)/2,计算此三角形面积S的海伦公式为:s=。
打开“xl\python\p49”文件夹中的文件“求解三角形面积.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
import math # 导入数学模块
def hl(a,b,c): # 定义求三角形面积的函数
p= ①
s=math.sqrt( ② ) # sqrt用于计算算术平方根
return ③ # 返回面积的值
a,b,c=3,4,5 # 边长依次赋值
print("此三角形的面积S为:", hl(a,b,c))
50.编写自定义函数,请输入一个年份,输出该年份是否是闰年,是则输出“YES”,否则输出“NO”。闰年的判断条件是可以被400整除,或者可以被4整除并且不能被100整除。打开“xl\python\p50”文件夹中的文件“判断闰年.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def rn(year):
if year%400==0 or year%4==0 ① year%100!=0: #判断闰年
return "YES"
② :
return "NO"
#主程序
year=int( ③ (“请输入年份:”))
print( ④ )
递归:
51.已知斐波那契数列1,1,2,3,5,8,13,21……,其定义如下:
f(n)=
求斐波那契数列第n项的值。打开“xl\python\p51”文件夹中的文件“斐波那契数列.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def f(n): #定义递归函数
if n==1 ① n==2:
return 1
else:
return ②
n=int(input("请输入正整数n的值:"))
print( ③ ) # 打印结果
52.用Python编辑器打开文件,完善程序实现功能:用递归法求1+2+3+…+100的值,并输出结果。打开“xl\python\p52”文件夹中的文件“递归求和.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def s(n):
if ① :
return 1
else:
return ② +s(n-1)
print(s( ③ ))
53.用Python编辑器打开文件,完善程序实现功能:用递归法求nk的值,并输出结果。打开“xl\python\p53”文件夹中的文件“递归求nk的值.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
def fun(n,k):
if(k==0):
return 1
if(k==1):
return ①
else:
return n*fun(n, ② )
n=int(input("请输入n:"))
k=int(input("请输入k:"))
print( ③ )
二分法:
54.在查字典翻页过程中借助两个书签,划定目标所属范围,然后翻到两个书签的中间位置。每次目标区域都更新为原来的“二分之一”,当数据范围缩小到只有1个数的时候肯定能得到问题的解。1000以内的页码,最多翻10次肯定能找到解。有了字典的实际操作经验,我们来尝试完善下列二分查找1000以内的整数的程序。打开“xl\python\p54”文件夹中的文件“查字典.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
x=int(input("请输入要查找的1000以内的整数:"))
step=0 #记录查找次数
flag1=1 #目标区域左边界
flag2=1000 #目标区域右边界
while (flag1<=flag2): #只要区间存在则执行循环
mid= ① #中间值
step=step+1 #查找次数加1
if mid>x:
② #右边界前移
elif mid ③ #左边界前移
else:
break #恰好找到目标数据,退出循环
print("查找次数为:", ④ ) #输出次数
input("运行完毕,请按回车键退出…")
其他:
55.“最强大脑”游戏问题的算法分析:显示游戏规则,显示物品及编号,屏幕停留10秒;随机出题,给出物品,回答编号;判断回答是否正确,如果正确,则答对的题数加1。重复以上步骤,直到答完5道题,显示答对的题数。打开“xl\python\p55”文件夹中的文件“最强大脑游戏.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
import random
import time
import os
print("你好,现在你有10秒钟的时间记忆下列物品及其编号")
things=["苹果","香蕉","橙子","梨子","猕猴桃","柚子","猴魁","铁观音","彩蛋","复活节"]
for i in range(10):
print(i,":",things[ ① ]) #在屏幕上显示编号及物品
time.sleep(10) #延时10秒
os.system("cls") #清屏幕,隐去编号及物品
n=0 #记录答对的题数,初值为0
t2= ② .sample(things,5) #随机抽出5个物品
for i in t2: #出5题
ans=int(input(i+"的编号是:")) #输入编号答题
if i==things[ ③ ]:
n=n+1 #如果回答正确,则答对的题数加1
print("\\n你一共答对了", ④ ,"次") #屏幕显示答对的题数
input("\\n按回车键结束程序")
56.用Python编辑器打开文件“xl\python\p56”文件夹中的文件“飞船升空.py”,实现当飞船速度“v>=7.91”时,输出“飞船成功飞行!”,否则输出“飞船不能升空!”,完善下列程序。请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
v= ① (input("请输入速度(千米/秒):"))
② v>=7.91:
print("飞船成功飞行!")
③
print("飞船不能升空!")
input("运行完毕,请按回车键退出…!")
57.将5万元存入银行,选择一年定期自动转存的存款方式,年利率均为1.25%,问:要使得总存款达6万元,至少需要存款多少年 打开“xl\python\p57”文件夹中的文件“存款年数.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
rate=0.0125 # 给利率变量赋初值
money=50000 # 给存款总额变量赋初值(单位:元)
year=0 # 给存款需要的年头赋初值
while ① :
money= ② *(1+rate) # 计算每年新的存款总额
③ # 存款年数加1
print("存款总额为6万元至少需要", year, "年") # 输出结果
58.“鸡兔同笼”:今有鸡兔同笼,上有三十五头,下有九十四足,问鸡、兔各几只 用Python编辑器打开“xl\python\p58”文件夹中的文件“鸡兔同笼.py”,完善下列程序。请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
print("这是一个有关鸡兔同笼问题的程序")
heads=float(input("请输入总的头数:"))
legs=float(input("请输入总的脚数:"))
tu= ①
print("兔子有:",tu,"只")
print("鸡有:", ② ,"只")
input("运行完毕,请按回车键退出…")
59.某同学参加了学校的体检,体检医生告诉他体重超重,需要加强运动。该同学了解到,运动时的心率若能控制在一定的范围内,则对增强心血管系统和呼吸系统的功能都有很好的效果;若超出范围,则对身体反而会有损伤。最适宜运动心率=(220/210-年龄-安静心率)×(60%~80%)+安静心率。用Python编辑器打开“xl\python\p59”文件夹中的文件“运动心率.py”,完善下列程序。请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。
age=float(input("请输入age="))
HRrest=float(input("请输入HRrest="))
gender=input("请输入male or female:")
if gender ① :
n=220
② :
n= ③
low= ④
high=(nageHRrest)*0.8+HRrest
print("最适宜的心率是:",low,"~",high)
input("运行完毕,请按回车键退出…")
60.编制订单数据处理程序。下列的Python程序可以实现以下功能:提供“添加订单”“发货”“查看订单列表”“退出”四个操作选项。当我们选择“1”后输入订单数据,程序将订单数据添加到订单数据表中;选择“2”后,程序将当前订单列表中最早进入的数据删除(表示已安排发货处理);选择“3”可以显示当前订单列表中所有的订单数据;选择“4”将结束运行。用Python 编辑器打开“xl\Python\p60”文件夹中的文件“订单.py”,模拟添加订单和发货的过程,了解订单列表的操作过程,完善程序并保存。
listque=[ ] #定义列表 listque 存储订单
x=0
while(x!=4): #当x!=4时,执行循环
print('1.添加订单')
print('2.发货')
print('3.查看订单列表')
print('4.退出')
x=int(input("输入你的选择:")) #输入选择项
if x==1:
y=input("输入订单编号:") #输入订单编号
① #在列表listque中添加订单号
elif x==2:
if ② ==0: #如果订单列表为空
print("订单列表为空")
else:
listque. ③ #删除列表 listque 的首元素,表示发货
elif x==3:
print("等待发货:",listque) #查询列表listque中的订单号
21世纪教育网(www.21cnjy.com)第三部分 操作题专练
Python操作题
顺序结构:
1.①input ②** ③v
2.①int ②n-1 ③s
3.①float ②(2*h/g)**0.5 ③t
4.①input ②a*b ③c
5.①n ②% ③10
6.①r ②l ③s
分支结构:
7.①int ②x%2==0 ③else
8.①男 ②low ③high
9.①0 ②1 ③m+20
10.①name ②password=="112233" ③else
11.①int ②D12.①< ②elif ③ticket*2 ④ total
13.①float ②zf>=90 ③print(“不合格”)
14.①<=6 ②elif ③y
15.①input ②elif ③grade=="D"
16.①d/t*60 ②v2>v1 ③else
17.①float ②data-32 ③c
18.①xm ②or ③else
19. ①float ②x<=6.5 ③else ④"不及格"
20.①a,c ②c,b ③and
21.①% ②m-1 ③n//(m-1)+1
for循环结构:
22.①f=1 ②num+1 ③f*i
23.①0 ②b+1 ③i%17 ④i
24.①range ②4-i ③i+1
25.①0 ②a%2 ③s2+a
26.①0 ②s ③s/n
27.①6 ②money ③money
28.①0 ②101 ③i
29.①2 ②h/2 ③s
30.①1 000 ②100 ③10
31.①input ②zfc ③1
32.①0 ②101 ③i%3!=0 ④s
while循环结构:
33.①0 ②% ③s=s+1
34.①== ②break ③else
35.①0 ②res!=6 ③i+=1
36.①index ②sum ③index+1
37.①0 ②sum<1000 ③m
38.①random ②ans>num ③1
39.①1 ②2 ③cnt
40.①w ②0.84 ③1
41.①0 ②"#" ③1
42.①0 ②a!=0 ③1
43.①% ②n//2 ③i
函数:
44.①0 ②x>0 ③x%10 ④x//10 ⑤m==n1
45.①0 ②x ③s==x ④j
46.①def ②int ③gcd
47.①n ②1 ③s*i ④1/s ⑤%fun(m)
48.①x ②a(x-2) ③n
49.①(a+b+c)/2 ②p*(p-a)*(p-b)*(p-c) ③s
50.①and ②else ③input ④rn(year)
递归:
51.①or ②f(n-1)+f(n-2) ③f(n)
52.①n==1 ②n ③100
53.①n ②k-1 ③fun(n,k)
二分法:
54.①(flag1+flag2)//2 ②flag2=mid-1 ③flag1=mid+1 ④step
其他:
55.①i ②random ③ans ④n
56.①float ②if ③else:
57.①money<60000 ②money ③year=year+1
58.①int((legsheads*2)/(4-2)) ②int(headstu)
59.①=="male" ②else ③210 ④(nageHRrest)*0.6+HRrest
60.①listque.append(y) ②len(listque)
③pop(0)