大学Python程序题题库.docx

上传人:b****6 文档编号:9148896 上传时间:2023-02-03 格式:DOCX 页数:16 大小:18.79KB
下载 相关 举报
大学Python程序题题库.docx_第1页
第1页 / 共16页
大学Python程序题题库.docx_第2页
第2页 / 共16页
大学Python程序题题库.docx_第3页
第3页 / 共16页
大学Python程序题题库.docx_第4页
第4页 / 共16页
大学Python程序题题库.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

大学Python程序题题库.docx

《大学Python程序题题库.docx》由会员分享,可在线阅读,更多相关《大学Python程序题题库.docx(16页珍藏版)》请在冰豆网上搜索。

大学Python程序题题库.docx

大学Python程序题题库

题目:

补充fun函数,其功能是判断一个整数是否是素数,在主

函数main中输入一个整数,调用该fun函数进行判断并输

出结果。

要求:

使用math相关函数

importmath

deffun(n):

i,w=2,0

ifn<=1:

w=1

whilei<=int(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=iormat(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,则应输出:

---------------------------------------------------------

注意:

不可以增加或删除程序行,也不可以更改程序的结构。

------------------------------------------------------'''

deffun(m):

y=

foriinrange(2,m+1):

y-=(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('','w')

string=input('请输入一个字符串:

\n')

string=()

(string)

fp=open('','r')

print())

()

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=()

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):

(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)ormat(m,k))

else:

print("没有找到!

")

if__name__=='__main__':

main()

'''------------------------------------------------------

【程序改错】

---------------------------------------------------------

题目:

输入一个时间(小时:

分钟:

秒),输出该时间经过5分30秒后的时间。

---------------------------------------------------------

注意:

不可以增加或删除程序行,也不可以更改程序的结构。

------------------------------------------------------'''

defmain():

hour,minute,second=input('请输入一个时间(h:

m:

s):

').split(':

')

hour=int(hour)

minute=int(minute)

second=int(second)

second+=30

ifsecond>=60:

second=second-60

minute+=1

minute+=5

ifminute>=60:

minute=minute-60

hour+=1

ifhour==24:

hour=0

print('%d:

%d:

%d'%(hour,minute,second))

if__name__=='__main__':

main()

'''------------------------------------------------------

【程序设计】

---------------------------------------------------------

题目:

请编写fun函数,其功能为根据整型形参m,计算如下公式

的值:

y=1/2+1/4+1/6+...+1/2m。

例如:

若m=9,则应输出:

---------------------------------------------------------

注意:

部分源程序给出如下。

请勿改动主函数main和其它函数中的

任何内容,仅在函数的注释标志之间填入所编写的若干语句。

------------------------------------------------------'''

deffun(m):

i,j,sum=1,0,0

whilei<=m:

sum+=1/(2*i)

i+=1

returnsum

defmain():

print("【请连续三次计算公式的值:

】")

forninrange(3):

print("【第%d次:

】"%(n+1))

m=int(input('【请输入任意正整数m:

】'))

print('【当前结果为:

】%.6f'%fun(m))

if__name__=='__main__':

main()

'''------------------------------------------------------

【程序设计】

---------------------------------------------------------

题目:

假设一年期定期利率为n%,计算一下需要过多少年,

一万元的定期存款连本带息能翻番

说明:

利率为用户输入的浮点型变量,范围是:

<n≤

例如:

输入n=,则输出:

22年以后,存款会翻番

---------------------------------------------------------

注意:

部分源程序给出如下。

请勿改动主函数main和其它函数中的

任何内容,仅在函数的注释标志之间填入所编写的若干语句。

------------------------------------------------------'''

defmain():

print("【请分别三次计算问题:

】")

foriinrange(3):

print("【第%d次:

】"%(i+1))

n=float(input("【请输入定期利率n(<n≤):

】"))

cunkuan=10000#本金10000元

years=0

whilecunkuan<20000:

years+=1

cunkan=cuankan*(1+n/100)

print(str(years)+"【年以后,存款会翻番】")

if__name__=='__main__':

main()

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1