预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共22页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(完整版)python期中考试试卷程序填空阅读填空程序试题 一、程序填空 1.小王编写了“字符串缩写”程序,实现如下功能: 1.输入一串由英文字母和数字组成的字符串, 2.如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大 1),则把升序段缩写成由第一个字符加上“—”和最后一个字符组成的新字符段, 3.例如:字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。 程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示: 实现上述功能的程序如下,请在程序划线处填入合适的代码。 s=input("请输入字符串s:") _______ flag=False result="" foriinrange(0,k-1): if___________________: result=result+s[i]+"-" flag=True eliford(s[i])!=ord(s[i+1])-1: result=result+s[i] _____ result=result+s[i+1] print("缩写后的字符串为:",result) 划线处①处应该填入的语句为:; 划线处②处应该填入的语句为:; 划线处③处应该填入的语句为:。 2.请在空格处填写正确的代码,使程序完善。 实现功能:绘制y=x2-2x+1的图像 #加载numpy模块并限简洁的别名为np importnumpyasnp #加载matplotlib.pyplot模块并限简洁的别名为plt importmatplotlib.pyplotasplt #x在-7到9之间,每隔0.1取一个点 x=np.arange(-7,9,0.1) _____=x**2-2*x+1 plt.plot(x,________) plt.title('y=x*x-2*x+1') plt.xlabel('x') plt.ylabel('y') plt._________ 3.阅读程序。分析有关多项式的代码并回答问题。 求1!+2!+3!+……+20!的和。 n=0 s=0 t=1 forninrange(1,21): t*=n s+=t print(s) (1)n的作用是________________。 (2)s的作用是______________。 (3)t的初值必须赋值为1,这是因为_________。 (4)t*=n的等价语句是__________ (5)s+=t的等价语句是______。 4.编写程序。信息社团的三个同学和Bruce一起做游戏,他们的游戏规则很简单,从1开 始依次报数,每当一个数能被7整除或者十位是7就要跳过这个数,现在给出一个数N, 请输入从1到N(包含N)中要跳过的数。 5.分析完善程序 [背景知识]为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号 限行,违反规定的车辆将予以处罚。 如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善 下面的程序。(提示:①所有车牌号中都含有数字,并且车牌号的长度都是6;②以车牌 中最后一位阿拉伯数字的奇、偶来决定单双号。)如: 请根据上述算法描述补全代码 s=input("车牌号s=") n=6 x=s[n-1:n] whilex.isdigit()==False: ① x=s[n-1:n] if②==0: print(“双号”) else: print(“单号”) (提示:s[n:m]的功能:从字符串s的 下标为n的元素开始,截取到下标为m-1的元素。例如:s="12345",s[2:4]="34"。s.isdigit): 判断是否为数字。) (1)根据题意,程序中空白①处应填写:______ (2)根据题意,程序中空白②处应填写:______(填:A/B/C/D)。 A.int(x)/2==0B.int(x)%2==0C.int(x)%2=0D.int(x)%2!=0 6.分析完善程序 某市出租车收费标准如下: (1)3公里内(含3公里),收费8元 (2)超过3公里但未超过6公里部分,按1.5元/公里收费 (3)超过6公里部分,按2.25元/公里收费。 根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元? [算法分析] 假设总费用为p,则可以分段计算 p=8‘(s≤3) p=1.5*(s-3)+8‘(3<s≤6) p=2.25*(s-6)+1.5*3+8‘(s>6) [参考代码] a=float(input(“s=”)) ifs<=3: p=8 if p=1.5*(s-3)+8 ifs>6: p=2.25*(s-6)+1.5*3+8 p