国家二级Python(基本编程题)模拟试卷2
基本编程题
1.从键盘输入一个汉字,在屏幕上显示输出该汉字的Unicode编码值,请完善代码。
#请输入一个汉字:
s=input()
print(’’\’’{}\’’汉字的Unicode编码:{}’’.format(①))
s=input(’’’’)
print(’’\’’{}、’’汉字的Unicode编码:{}’’.format(s,ord(s)))
解析:
2.从键盘输入两个数(换行),调用函数gcd()输出两个数的最大公约数显示在屏幕上。请完善代码。
def gcd(x,y):
if x<y:
x,y=y,x
while(x%y)!=0:
①
x=y
y=r
return y
#输入第一个正整数:
a=eval(input())
#请输入第二个正整数:
b=eval(input())
gcdab=gcd(a,b)
print(’’{}与{}的最大公约数是{}’’.format(a,b,②))
def gcd(x,y):
if x<y:
x,y=y,x
while x%y!=0:
r=x%y
x=y
y=r
return y
a=eval(input(’’’’))
b=eval(input(’’’’))
gcdab=gcd(a,b)
print(’’{}与{}的最大公约数是{}’’.formatf a.b.gcd(a b)))
解析:
3.从键盘输入一个列表,计算输出列表元素的平均值。请完善代码。
def mean(numlist):
s=0.0
for num in numlist:
s=s+num
return ①
#请输入一个列表:
ls=eval(input())
print(’’平均值为:’’,②)
def mean(numlist):
s=0.0
for num in numlist:
s=s+num
return s/len(numlist)
ls=eval(input(’’’’))
print(’’平均值为:’’,mean(ls))
解析:
4.从键盘输入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(①)
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))
解析:
5.将一个列表中所有的单词首字母转换成大写。请完善代码。
ls=eval(input())
for i in range(len(ls)):
ls[i]=①
print(ls)
ls=eval(input())
for i in range(len(ls)):
ls[i]=ls[i].capitalize()
print(ls)
解析:
6.从键盘输入一个列表,计算输出列表元素的均方差。请完善代码。
def mean(numlist):
s=0.0
for Rum 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(①))
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))))
解析:
7.输入字符串,使用中文分词库输出精确模式的中文分词结果。请完善代码。
import jieba
Tempstr=input()
Is=①
print(ls)
import jieba
Tempstr=input()
ls=jieba.lcut(Tempstr)
print(ls)
解析:
8.若某自然数除它本身之外的所有因子之和等于该数,则称该数为完数。输出1000以内的完数。请完善代码。
for i in range(2,1001):
#此段代码请完善
for i in range(2,1001):
s=i
for j in range(1,i):
if i%j==0:
s一=j
if s==0:
print(i)
解析:
9.输入一个自然数n,如果n为奇数,输出表达式1+1/3+…+1/n的值;如果n为偶数,输出表达式1/2+1/4+…+1/n的值;输出表达式结果保留2位小数。请完善代码。
deff(n):
①
if②:
for i in range(1,n+1,2):
sum+=1/i
else:
for i in range(2,n+1,2):
sum+=1/i
return sum
n=int(input())
print(③)
def f(n):
sum=0.0
if n%2==1:
for i in range(1,n+1,2):
sum+:1/i
本文档预览:3600字符,共9040字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载