python程序设计课程练习题

🐋前言

这是一份python程序设计课程的练习答案,题目来源于https://www.dotcpp.com/team/2526

各位同学,我想对同学们说的是比起死记硬背代码,老师更希望同学们能锻炼自己的思维逻辑,开发提升智力,切记不要死记硬背代码!

同学们在此博客中使用ctrl+F查询自己的题目答案,如果有觉得老师写代码写的不好的地方,你也可以自己改正,因为每个人写代码的风格是不一样的,适合自己的才是最好的,老师也希望你能在编写代码中获得开心,自由和快乐!谢谢大家!

🍃题目及代码

第一个HelloWorld程序

print("**************************")
print("Hello World!")
print("**************************")

温度转换

while True:
    try:
        f = int(input())
        c = 5*(f - 32) / 9
        print("c=%.2f"%c)
    except:
        break

简单的a+b

while True:
    try:
        a, b = input().split()
        a = int(a)
        b = int(b)
        print(a + b)
    except:
        break

字符串输入输出函数

number = input()
mystring = input()
number = float(number)
print("please input a number:")
print("please input a string:")
print(number)
print(mystring)

三个数最大值

while True:
    try:
        a, b, c = input().split()
        a = int(a)
        b = int(b)
        c = int(c)
        if a > b and a > c:
            print(a)
        if b > a and b > c:
            print(b)
        if c > a and c > b:
            print(c)
    except:
        break

分段函数求值

while True:
    try:
        x = input()
        x = int(x)
        if x<1:
            y=x
        if 1<=x<10:
            y=2*x-1
        if x>=10:
            y= 3*x-11
        print(y)
    except:
        break

成绩评定

grade = int(input())
if grade >= 90:
    print("A")
elif grade >= 80:
    print("B")
elif grade >= 70:
    print("C")
elif grade >= 60:
    print("D")
else:
    print("F")

数字的处理与判断

number = input()
mylen = len(number)
print(mylen)
print(' '.join(number))
new_number =''
for i in range(mylen-1,-1,-1):
    new_number = new_number + number[i]
print(new_number)

汽水瓶

while True:
    try:
        n = int(input())
        if n==0:
            break
        m = 0
        while n >= 3:
            a = n // 3
            b = n % 3
            m += a
            n = a + b
        if n == 2:
            m += 1
        print(m)
    except EOFError:
        break

水仙花数判断

# 遍历所有三位数
for num in range(100, 1000):
    # 分解出百位、十位、个位数字
    hundreds = num // 100
    tens = (num // 10) % 10
    units = num % 10

    # 判断是否为水仙花数(各位数字立方和等于该数本身)
    if hundreds ** 3 + tens ** 3 + units ** 3 == num:
        print(num)

陶陶摘苹果

apples = list(map(int,input().split()))
height = int(input())
res =  0
for i in apples:
    if i <= height+30:
        res += 1
print(res)

与指定数字相同的数的个数

n = int(input())
numbers = list(map(int, input().split()))
m = int(input())
count = numbers.count(m)
print(count)

计算书费

book_prices = [28.9, 32.7, 45.6, 78, 35, 86.2, 27.8, 43, 56, 65]
purchase_counts = list(map(int, input().split()))
total_cost = 0.0
for i in range(len(purchase_counts)):
    total_cost += purchase_counts[i]*book_prices[i]

# 输出总费用,强制保留1位小数
print("%.1f" %total_cost)

年龄与疾病

# 读取病人数量
n = int(input())
# 读取每个病人的年龄并转换为整数列表
ages = list(map(int, input().split()))

# 初始化四个年龄段的计数器
count1 = 0  # 0-18岁
count2 = 0  # 19-35岁
count3 = 0  # 36-60岁
count4 = 0  # 61岁及以上

# 统计各年龄段人数
for age in ages:
    if age <= 18:
        count1 += 1
    elif age <= 35:
        count2 += 1
    elif age <= 60:
        count3 += 1
    else:
        count4 += 1

# 计算各年龄段人数占总人数的百分比(保留两位小数)
p1 = (count1 / n) * 100
p2 = (count2 / n) * 100
p3 = (count3 / n) * 100
p4 = (count4 / n) * 100

# 输出结果,格式为保留两位小数的百分比
print(f"{p1:.2f}%")
print(f"{p2:.2f}%")
print(f"{p3:.2f}%")
print(f"{p4:.2f}%")

Sn的公式求和

n = int(input())
res = 0
temp = 0
for i in range(n):
    temp = temp*10+2
    res+= temp
print(res)

统计数字字符个数

cnt = 0
s = input()
for i in s:
    if i>='0' and i<='9':
        cnt += 1
print(cnt)

找第一个只出现一次的字符

s = input()
for i in s:
    if s.count(i) == 1:
        print(i)
        break

基因相关性

threshold  = float(input())
s1 = input().strip()
s2 = input().strip()
cnt =0.0
for i in range(len(s1)):
    if s1[i] == s2[i]:
        cnt += 1
if cnt/len(s1) >= threshold:
    print("yes")
else :
    print("no")

石头剪子布

# 读取游戏轮数
n = int(input())

# 处理每一轮游戏
for _ in range(n):
    # 读取两位玩家的选择
    s1, s2 = input().split()

    # 判断结果
    if s1 == s2:
        print("Tie")
    # 检查Player1获胜的情况
    elif (s1 == "Rock" and s2 == "Scissors") or \
            (s1 == "Scissors" and s2 == "Paper") or \
            (s1 == "Paper" and s2 == "Rock"):
        print("Player1")
    # 其他情况则Player2获胜
    else:
        print("Player2")

输出亲朋字符串

s1 = input()
s2 =""
for i in range(len(s1)):
    if i!=len(s1)-1:
        s2 = s2+(chr(ord(s1[i]) +ord(s1[i+1])))
    else:
        s2 = s2+(chr(ord(s1[i]) +ord(s1[0])))
print(s2)
posted @ 2025-10-08 00:29  傻傻的小小豪  阅读(265)  评论(0)    收藏  举报