Python语⾔上机题实现⽅法(持续更新...)
Python语⾔上机题实现⽅法(持续更新...)
1.【字符串循环左移】给定⼀个字符串S,要求把S的前k个字符移动到S的尾部,如把字符串“abcdef”前⾯的2个字符‘a’、‘b’移动到字符串的尾部,得到新字符
快速排序python实现串“cdefab”,称作字符串循环左移k位。输⼊格式:输⼊在第1⾏中给出⼀个不超过100个字符长度的、以回车结束的⾮空字符串;第2⾏给出⾮负整数N。输出格式:在⼀⾏中输出循环左移N次后的字符串。
输⼊样例:
abcd
2
输出样例:
cdab
【代码】:
a = input()
N = int(input())
b = a[0:N]
c = a[N:len(a)] + b
print(c)
2.【最后⼀个单词】计算字符串最后⼀个单词的长度,单词以空格隔开。输⼊格式:⼀⾏字符串,⾮空,长度⼩于5000。输出格式:整数N,最后⼀个单词的长度。
输⼊样例:
hello world
输出样例:
5
【代码】:
a = input()
b = a.split(" ")
c = b[len(b)-1]
print(len(c))
3.【计算字符个数】接受⼀个由字母和数字组成的字符串,和⼀个字符,然后输出输⼊的字符串中含有该字符的个数。不区分⼤⼩写。输⼊格式:输⼊⼀个由字母和数字组成的字符串,和⼀个字符,以空格隔开。输出格式:输出输⼊的字符串中含有该字符的个数。
输⼊样例:
a1234bcdef a
输出样例:
1
【代码】:
a = input()
b = a.split(" ")
c = b[0]
d = b[1]
k = 0
for i in c:
if (i == d[0]):
k = k + 1
print(k)
4.【圆的周长与⾯积】给出⼀个圆的半径,求出圆的周长和⾯积。输⼊格式:输⼊包含⼀个整数r,表⽰圆的半径。输出格式:输出⼀⾏,包含2个数,分别是圆的周长、⾯积,⽤空格分隔开,数字保留⼩数点后4位。提⽰:使⽤ round(a,4) 函数保留4位⼩数,规定pi=3.14159。
输⼊样例:
3
Processing math: 100%
18.8495 28.2743
【代码】:
r = int(input())
pi = 3.14159
c = float(2 \* pi \* r)
s = float(pi \* r \* r)
print(round(c, 4), round(s, 4))
5.【三⾓形⾯积】由三⾓形的三边长,求其⾯积。规定:输⼊的三条边⼀定能构成三⾓形,不⽤进⾏
判定。提⽰:a,b,c⼩于1000由三⾓形的三边a,b,c求⾯积可以⽤如下的公式:其中p=(a+b+c)/2,⾯积=S=√[p(p-a)(p-b)(p-c)]。请使⽤![img](file:///C:/Users/⾕锦涛/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg)来保留⼩数。输⼊格式:三⾏,每⾏⼀个整数。输出格式:⼀个实数,保留两位⼩数。
输⼊样例:
3
4
5
输出样例:
6.00
【代码】:
import math
a = int(input())
b = int(input())
c = int(input())
p = float((a + b + c) / 2)
s = p * (p - a) * (p - b) * (p - c)
print("%.2f" % math.sqrt(s))
6.【等差数列末项计算】给出⼀个等差数列的前两项a1,a2,求第n项是多少。输⼊格式:三⾏,包含三个整数a1,a2,n。输出格式:⼀个整数,即第n项的值。
输⼊样例:
输出样例:
1
4
100
输出样例:
298
【代码】:
a1 = int(input())
a2 = int(input())
n = int(input())
x = a1 + 3 * n -3
print(x)
7.【分割数字】编写⼀个程序,提⽰⽤户输⼊四位整数并以反向顺序显⽰。
输⼊格式:⼀个四位的整数。输出格式:四个⼀位整数,在同⼀⾏输出,空格分隔,结尾⽆空格。
【提⽰】:将各位上的数字分离后按照输出格式组成字符串,最后⽤字符串处理函数去掉拼接后字符串末尾的空格,以保证结尾⽆空格。
输⼊样例:1234
输出样例:4 3 2 1
【代码】:
a = input()
b = ""
c = a[::-1]
print(c)
d = " "
b += i
print(d.join(b))
8.【进制间的转换】输⼊⼀个⼗进制数,分别输出其对应的⼆进制、⼋进制、⼩写⼗六进制和⼤写⼗六进制⽅式。(⽐如⽤户输⼊123,程序运⾏输出1111011, 173, 7b, 7B)
【代码】:
a = int(input())
print(bin(a).replace('0b',''))
print('%o' % a)
print('%x' % a)
print("%X" % a)
9.【合并两个列表并去重】 输⼊两个列表alist和blist,要求列表中的每个元素都为正整数且不超过10,合并alist和blist,并将重复的元素去掉后输出⼀个新的列表clist。
输⼊格式:共两⾏,每⼀⾏都⽤来输⼊列表中的元素值,以空格隔开。
输出格式:共⼀⾏,以列表形式打印输出。
输⼊样例:
1 2 3
4 3 2
输出样例:
[1,2,3,4]
【代码】:
alist = list(map(int,input().split(" ")))
blist = list(map(int,input().split(" ")))
clist = []
clist = alist + blist
dlist = []
for i in clist:
if i not in dlist:
dlist.append(i)
print(dlist)
10.【列表反转】输⼊⼀个列表,将其反转后输出新的列表。输⼊格式:共⼀⾏,列表中的元素值,以空格隔开。输出格式:共⼀⾏,为⼀个列表。
输⼊样例:
123 234 456
输出样例:
[456,234,123]
【代码】:
a = list(map(int,input().split(" ")))
print(a)
11.【列表元素绝对值排序】输⼊⼀个列表,要求列表中的每个元素都为整数;将列表中的所有元素按照它们的绝对值⼤⼩进⾏排序,绝对值相同的还保持原来的相对位置,打印排序后的列表(绝对值⼤⼩仅作为排序依据,打印出的列表中元素仍为原列表中的元素)。
输⼊格式:输⼊共⼀⾏,列表中的元素值,以空格隔开。输出格式:输出共⼀⾏,为⼀个列表。
输⼊样例:
-2 1 3
输出样例:
[1,-2,3]
【代码】:
a = list(map(int,input().split(" ")))
print(sorted(a, key=abs))
12.【投资额】假如你想将⼀笔钱以固定年利率存⼊账户。如果你希望三年之后账户中有5000元,在需要存⼊多少钱?使⽤下⾯的公式可以算出初始存款,编写⼀个程序,提⽰⽤户输⼊最终⾦额值、百分⽐表⽰的年利率以及年数,然后显⽰最初存款额。输⼊格式:最终⾦额值、百分⽐表⽰的年利率以及年数,输⼊下⼀项需换⾏。输出格式:最初存款额(注意:计算后保持原样输出,不要保留⼩数位数)
![img](file:///C:/Users/⾕锦涛/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg)
输⼊样例:
1000
4.25
5
输出样例:
808.8639197424636
【代码】:
a = float(input())
b = float(input())
c = float(input())
sum = 0
x = pow((1 + ((b *0.01) / 12)),c * 12)
sum = a / x
print(sum)
13.【凯撒密码解密】⾸先接收⽤户输⼊的加密⽂本,然后对字母a-z和字母A-Z按照密码算法进⾏反向转换,同时输出。(加密的密码算法:将信息中的每⼀个英⽂字符循环替换为字母表序列中该字符后⾯的第三个字符,即原⽂字符A将被替换为D、原⽂字符B将被替换为E、原⽂字符C将被替换为F,以此类推,本题要求根据此密码算法实现反向转换,⽐如⽤户输⼊密⽂:Wklv lv dq hafhoohqw Sbwkrq errn.程序输出:This is an excellent Python book.)
【代码】:
a = input()
for p in a:
if "a" <= p <= "z":
print(chr(ord("a")+(ord(p)-ord("a")-3) % 26), end='')
elif "A" <= p <= "Z":
print(chr(ord("A")+(ord(p)-ord("A")-3) % 26), end='')
else:
print(p, end='')
14.【列表综合练习1】现有如下列表,请按照之后的要求完成题⽬:
L=[“apple”,”banana”,”orange”,”cherry”,”watermelon”,”lemon”,“grape”,“pomegranate”]
(1)计算列表的长度并输出。
【代码】:
L = ["apple","banana","orange","cherry","watermelon","lemon","grape","pomegranate"]
print(len(L))
(2)请通过步长获取索引为3的倍数的所有值,并打印获取后的列表L1。
【代码】:
L1 = L[::3]
print(L1)
(3)请在列表第三个位置和列表的最后,各插⼊1个任意元素,并删除列表中第6个元素,后⾃动输出新⽣成列表L2,并允许输⼊随机序号,显⽰选中的⽔果。
【代码】:
a = list(map(str,input().split(" ")))
L2 = L
L2.insert(3,a[0])
L2.insert(len(L),a[1])
L2.pop(6)
print(L2)
b = int(input())
print(L2[b])
(4)请将字符串str=“fruits”中的每⼀个元素添加到L2中,并删除L2中第1⾄3个元素,⽣成新列表L3,并输出。
【代码】:
b = input()
L3 = L2
for i in b:
L3.insert(0,i)
L3.pop(1)
L3.pop(2)
L3.pop(3)
print(L3)
14.【列表综合练习2】 写代码,有如下列表,按照要求实现每⼀个功能。Lis = [9,"hello" , "jack", ["rose", 250, ["kdf1", ["tsfat", 3, "1"]], 0], "cdfab", "addgfv"](1)将列表Lis中的"d"变成⼤写。
(2)将列表中的数字3变成字符串"whoo"
(3)将列表中的字符串"tsfat"变成数字 100
(4)在 "rose"前⾯插⼊字符串:"movie"
(5)打印列表
【代码】:
Lis = [9,"hello","jack",["rose",250,["kdfl",["tsfat",3,"1"]],0],"cdfab","addgfv"]
Lis[3][2][0] = Lis[3][2][0].replace('d','D')
Lis[4] = Lis[4].replace('d','D')
Lis[5] = Lis[5].replace('d','D')
Lis[3][2][1][1] = "whoo"
Lis[3][2][1][0] = 100
Lis[3].insert(0,'movie')
print(Lis)
15.【列表操作】现有两个列表:a = [11, 22, 33];b = [22, 33, 44],编写程序要求分别实现如下功能:
(1)获取内容相同的元素列表
(2)获取a中有, b中没有的元素列表
(3)获取b 中有,a中没有的元素列表
(4)获取a 和 b 中内容不同的元素
【代码】:
a = [11,22,33]
b = [22,33,44]
c = []
d = []
e = []
f = []
for i in a:
for j in b:
if i == j:
c.append(i)
d = [i for i in a if not i in b]
e = [i for i in b i
f not i in a]
f = d + e
print(c,d,e,f)
16.编写Python程序计算下列数学表达式的结果并输出,⼩数点后保留3位,输出占10位,空位⽤‘*’填充,右对齐。
x=sqrt((pow(3,4)+5+pow(6,7))/8)
x=sqrt((pow(3,4)+5+pow(6,7))/8)
【代码】:
import math
a = (pow(3,4) + 5 + pow(6,7)) / 8
x = math.sqrt(a)
print("%.3f" % x)
17.补充程序,分别输出字符串s中汉字和标点符号的个数。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论