大学Python程序题题库.docx
- 文档编号:27904298
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:19
- 大小:18.64KB
大学Python程序题题库.docx
《大学Python程序题题库.docx》由会员分享,可在线阅读,更多相关《大学Python程序题题库.docx(19页珍藏版)》请在冰豆网上搜索。
大学Python程序题题库
程序设计
题目:
补充fun函数,其功能是判断一个整数是否是素数,在主
函数main中输入一个整数,调用该fun函数进行判断并输
出结果。
要求:
使用math相关函数
importmath
deffun(n):
i,w=2,0
ifn<=1:
w=1
whilei<=int(math.sqrt(n))andw==0:
ifn%i==0:
w=1
break
else:
i=i+1
returnw
defmain():
print("【请连续四次判断输入的整数是否是素数:
】")
foriinrange(4):
print("【第%d次:
】"%(i+1))
n=int(input('【请输入一个整数n:
】'))
iffun(n)==0:
print("%d是素数"%n)
else:
print("%d不是素数"%n)
if__name__=='__main__':
main()
题目:
求100-999之间的水仙花数
说明:
水仙花数是指一个三位数的各位数字的立方和是这个数本身。
例如:
153=1^3+5^3+3^3)。
---------------------------------------------------------
注意:
除要求填空的位置之外,请勿改动程序中的其他内容。
------------------------------------------------------'''
defmain():
foriinrange(100,1000):
h=i//100
t=(i-100*h)//10
s=i-100*h-t
ifi==h**3+t**3+s**3:
print(i)
if__name__=='__main__':
main()
【程序填空】
---------------------------------------------------------
题目:
输入某年某月某日,判断这一天是这一年的第几天?
---------------------------------------------------------
注意:
除要求填空的位置之外,请勿改动程序中的其他内容。
------------------------------------------------------'''
defmain():
date=input("输入年月日(yyyy-mm-dd):
")
y,m,d=(int(i)foriindate.split('-'))
sum=0
special=(1,3,5,7,8,10)
foriinrange(1,int(m)):
ifi==2:
ify%400==0or(y%100!
=0andy%4==0):
sum+=29
else:
sum+=28
elif(iinspecial):
sum+=31
else:
sum+=30
sum=sum+d
print("这一天是一年中的第%d天"%sum)
if__name__=='__main__':
main()
【程序填空】
---------------------------------------------------------
题目:
求输入数字的平方,如果平方运算后小于50则退出。
---------------------------------------------------------
注意:
除要求填空的位置之外,请勿改动程序中的其他内容。
------------------------------------------------------'''
defpower(x):
ifx**2>=50:
print('%d的平方为:
%d,不小于50,继续'%(x,x**2))
else:
print('{}的平方为:
{},小于50,退出'.format(x,x**2))
quit()
defmain():
whileTrue:
x=int(input('输入数字:
'))
power(x)
if__name__=='__main__':
main()
【程序改错】
---------------------------------------------------------
题目:
main()函数中实现按逗号分隔列表,并打印输出
---------------------------------------------------------
注意:
不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------'''
defmain():
l=[1,2,3,4,5,6,7];
k=1;
foriinl:
print(i,end=(''if(k==len(l))else','));
k=k+1
if__name__=='__main__':
main()
题目:
根据整型形参m的值,计算如下公式的值。
111
t=1-——-——-...-——
2x23x3mxm
例如:
若m=5,则应输出:
0.536389
---------------------------------------------------------
注意:
不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------'''
deffun(m):
y=1.0
foriinrange(2,m+1):
y-=1.0/(i*i)
returny
defmain():
m=int(input("请输入整型形参m的值:
"))
print('结果为:
%.6f'%fun(m))
if__name__=='__main__':
main()
【程序改错】
---------------------------------------------------------
题目:
读取7个数(1-50)的整数值,每读取一个值,程序打印
出该值个数的*。
请改正程序中的错误,使它能得出正确的结果。
---------------------------------------------------------
注意:
不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------'''
defmain():
n=1
whilen<=7:
a=int(input('请输入一个整数值,并按回车继续:
'))
whilea<1ora>50:
a=int(input('范围是1-50,请重新输入:
'))
print(a*'*')
n+=1
if__name__=='__main__':
main()
【程序设计】
---------------------------------------------------------
题目:
请编写函数fun,其功能是:
用for循环语句求1到n之间所
有偶数之和(若n为偶数包括n),并将结果返回给主函数。
(n值由用户输入)
例如:
运行程序后若输入:
10,则输出为:
sum=30。
---------------------------------------------------------
注意:
部分源程序给出如下。
请勿改动主函数main和其它函数中的
任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
deffun(n):
s=0
foriinrange(1,n+1,2):
s=s+i
returns
defmain():
print("【请分别三次计算问题:
】")
foriinrange(3):
print("【第%d次:
】"%(i+1))
n=int(input("【请输入一个大于1的正整数n:
】"))
if(n<=1):
print("【请输入一个大于1的正整数!
】");
else:
print("【1到"+str(n)+"之间所有偶数之和是:
】",fun(n))
if__name__=='__main__':
main()
''------------------------------------------------------
【程序设计】
---------------------------------------------------------
题目:
请编写main函数,输入一个百分制成绩score,根据成绩打印5级等级。
(即0~59:
E;60~69:
D;70~79:
C;80~89:
B;90~100:
A)
要求:
使用if语句,根据成绩输出A等!
或B等!
或C等!
或D等!
或E等!
---------------------------------------------------------
注意:
部分源程序给出如下。
请勿改动主函数main和其它函数中的
任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
defmain():
print("【请连续五次根据输入的成绩打印等级:
】")
forninrange(5):
print("【第%d次:
】"%(n+1))
score=int(input("【请输入一个百分制成绩:
】"))
ifscore>=0andscore<=59:
print("E等!
")
ifscore>=60andscore<=69:
print("D等!
")
ifscore>=70andscore<=79:
print("C等!
")
ifscore>=80andscore<=89:
print("B等!
")
else:
print("A等!
")
if__name__=='__main__':
main()'''------------------------------------------------------
【程序设计】
---------------------------------------------------------
题目:
请补充函数fun,其功能是:
求出n!
并将结果返回给主函数。
完成程序后请编译并运行程序。
例如:
括号内是说明
输入:
5(n=5)
输出:
5的阶乘为120
---------------------------------------------------------
注意:
部分源程序给出如下。
请勿改动主函数main和其它函数中的
任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
deffun(num):
factorial=1
ifnum<0:
print("抱歉,负数没有阶乘")
elifnum==0:
return1
else:
foriinrange(1,num+1):
factorial=factorial*i
returnfactorial
defmain():
print("【请连续三次计算n!
的值:
】")
forninrange(3):
print("【第%d次:
】"%(n+1))
num=int(input("【请输入一个数字num:
】"))
factorial=fun(num)
print("【%d的阶乘为】%d"%(num,factorial))
if__name__=='__main__':
main()
'''------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
从键盘输入一个字符串,将小写字母全部转换成大写字母,
然后输出到一个磁盘文件“test”中保存。
输入的字符串
以!
结束。
---------------------------------------------------------
注意:
除要求填空的位置之外,请勿改动程序中的其他内容。
------------------------------------------------------'''
defmain():
fp=open('test.txt','w')
string=input('请输入一个字符串:
\n')
string=string.upper()
fp.write(string)
fp=open('test.txt','r')
print(fp.read())
fp.close()
if__name__=='__main__':
main()
''------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
以每行5个数来输出300以内能被7或17整除的偶数,并求出
其和。
---------------------------------------------------------
注意:
除要求填空的位置之外,请勿改动程序中的其他内容。
------------------------------------------------------'''
defmain():
sum=0
n=0
foriinrange(1,300):
if(i%7==0ori%17==0):
if(i%2==0):
sum=sum+i;
n+=1
print("%6d"%i,end="");
if(n%5==0):
print()
print()
print("total=%d"%sum);
if__name__=='__main__':
main()
'''------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
请输入星期几的第一个字母来判断一下是星期几,如果第
一个字母一样,则继续判断第二个字母。
---------------------------------------------------------
注意:
除要求填空的位置之外,请勿改动程序中的其他内容。
------------------------------------------------------'''
defmain():
letter=input("请输入首字母:
")
letter=letter.upper()
ifletter=='S':
letter=input("请输入第二个字母:
")
ifletter=='a':
print('Saturday')
elifletter=='u':
print('Sunday')
else:
print('dataerror')
elifletter=='F':
print('Friday')
elifletter=='M':
print('Monday')
elifletter=='T':
letter=input("请输入第二个字母:
")
ifletter=='u':
print('Tuesday')
elifletter=='h':
print('Thursday')
else:
print('dataerror')
elifletter=='W':
print('Wednesday')
else:
print('dataerror')
if__name__=='__main__':
main()
'''------------------------------------------------------
【程序改错】
---------------------------------------------------------
题目:
用起泡法对n个整数从小到大排序。
---------------------------------------------------------
注意:
不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------'''
defSort(date):
length=len(date)
foriinrange(length-1):
forjinrange(0,length-i-1):
if(date[j]>date[j+1]):
t=date[j]
date[j]=date[j+1]
date[j+1]=t
returndate
defmain():
n=int(input("请输入n个整数的个数n:
"))
a=[]
foriinrange(n):
a.append(int(input("请分别输入整数元素,并按回车继续:
")))
print('排序前的数组为:
',a)
print('排序后的数组为:
',Sort(a))
if__name__=='__main__':
main()
'''------------------------------------------------------
【程序改错】
---------------------------------------------------------
题目:
由N个有序整数组成的数列已放在一维数组中,下列给定
程序中函数fun的功能是:
利用折半查找法查找整数m在
数组中的位置。
若找到,返回其下标值;否则,返回-1。
请改正程序中的错误,使它能得出正确的结果。
说明:
折半查找的基本算法是:
每次查找前先确定数组中待查的
范围low和high(low 元素的值进行比较。 如果m的值大于中间位置元素的值, 则下一次的查找范围落在中间位置之后的元素中;反之, 下一次的查找范围落在中间位置之前的元素中。 直到low>high, 查找结束。 ----------------------------------------------------------- 注意: 不可以增加或删除程序行,也不可以更改程序的结构。 ------------------------------------------------------''' deffun(a,m): low=0 high=len(a)-1 while(low<=high): mid=(low+high)//2 if(m high=mid-1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 Python 程序 题库