蓝桥杯中的Python是近段时间才开设的一项比赛,网上大部门只有关于Java和C语言的题解,写这篇博客算是自己的对参与蓝桥杯Python组学习的记录和找到自己不足的方面。
目录
一、运算符练习
题目 1003: [编程入门]密码破译
要将"China"译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母.
例如,字母"A"后面第4个字母是"E"."E"代替"A"。因此,"China"应译为"Glmre"。
请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为,’C’、’h’、’i’、’n’、’a’,经过运算,使c1、c2、c3、c4、c5分别变为’G’、’l’、’m’、’r’、’e’,并输出。
输入:
China
输出:
加密后的China
输入示例:
China
输出示例:
Glmre
我们可以用ord和chr将获取到的数值转换成字符形式,紧接着采用循环的方式,输出加密后的字母。
user = str(input())
for i in user:
word = chr(ord(i) + 4)
print(word, end="")
题目 1005: [编程入门]温度转换
输入一个华氏温度,要求输出摄氏温度。公式为 c=5(F-32)/9,取位2小数。
样例输入:
-40
样例输出:
c=-40.00
这里不需要使用循环。
user = int(input())
c = 5 * (user - 32) / 9
print("c={:.2f}".format(c))
题目 1951: 求平方和
输入2个整数,求两数的平方和并输出。
样例输入:
3 4
样例输出:
25
这里面要求的是两个数之间用空格分割,所以我们得使用一行让用户输入,并用split将两个数空格开。可以使用循环的方式,也可以不使用循环。
user = input().split(" ")
sum = (int(user[0]) * int(user[0])) + (int(user[1]) * int(user[1]))
print(sum)
题目 1669: 求圆的面积
已知半径r,求一个圆的面积是多大。
圆的面积公式:s=Π * (r的平方)
输入示例:
2
输出示例:
12.57
user = float(input())
s = 3.1415926 * (user * user)
print("{:.2f}".format(s))
题目 1952: 求长方形面积
输入一个长方形的长和宽(整数),输出该长方形的周长C和面积S,要求格式如例(请注意打印“C:”、“S:”,使用半角冒号,参考样例输出)。
输入示例:
2 5
输出示例:
C:14
S:10
这里同上面求平方和的方式是一样的。
user = input().split(" ")
z = (int(user[0]) + int(user[1])) * 2
m = int(user[0]) * int(user[1])
print("C:{}\nS:{}".format(z, m))
二、分支练习
题目 1006: [编程入门]三个数找最大值
有三个整数a b c,由键盘输入,输出其中的最大的数。
输入示例:
10 20 30
输出示例:
30
这里只需用遍历循环和max函数输出。
user = input().split(" ")
print(max(user))
题目 1007: [编程入门]分段函数求值
有一个函数
y={ x x<1
| 2x-1 1<=x<10
{ 3x-11 x>=10写一段程序,输入x,输出y
样例输入:
14
样例输出:
31
这里直接用分支结构的方式判断。
user = int(input())
if user < 1:
print(user)
elif 1 <= user <= 10:
print(2 * user - 1)
else:
print(3 * user - 11)
题目 1043: [编程入门]三个数字的排序
输入三个整数,按由小到大的顺序输出。
输入示例:
1 3 2
输出示例:
1 2 3
user = [x for x in input().split(" ")]
user.sort()
for i in user:
print(i, end=" ")
题目 1008: [编程入门]成绩评定
给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。
样例输入:
90
样例输出:
A
也一样使用分支语句判断。
user = int(input())
if 90 <= user <= 100:
print("A")
elif 80 <= user <= 89:
print("B")
elif 70 <= user <= 79:
print("C")
elif 60 <= user <= 69:
print("D")
elif user <= 59:
print("E")
题目 1009: [编程入门]数字的处理与判断
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
输入示例:
12345
输出示例:
5
1 2 3 4 5
54321
因为输出的要求是输出有多少位数、输出的每一个数用空格分割,空格分割这里我使用的是join方法连接,着用就不用遍历循环它了。
use = input()
if len(use) <= 5:
print("{}\n{}\n{}".format(len(str(use)), " ".join(str(use)), use[::-1]))