Python编程实战:11个经典题目解析
题目 - 01
#编写程序,判断一个分数x的等级,如果x大于等于90分,则记为“A”;如果x大于等于80分且小于90分,则记为“B”;如果x大于等于70分且小于80分,则记为“C”;如果小于70分,则记为“D”。
x = int(input("请输入你的分数:(0-100分)")) if x>100 or x<0: print('请输入正确的分数') else: if 100 >= x >= 90: garde = "A" elif 90 > x >= 80: garde = "B" elif 80 > x >= 70: garde = "C" else: garde = "D" print(garde)
题目 - 02
#求整数1--100的累加值,但要求跳过所有个位为5的数。
sum = 0 for i in range(1, 101): if i % 10 == 5: continue else: sum += i print(sum)上述代码运行结果如下:
题目 - 03
#输入一个数值,输出从1到这个数的所有奇数,并且每隔10个数换一行。
num = int(input("请输入一个数值:")) n = 0 for i in range(1,num+1,2): n +=1 print(i,end="\t") if n % 10 == 0: print('')上述代码运行结果如下:
题目 - 04
#编写程序求number的阶乘。number的阶乘等于1*2*...*number,比如,5的阶乘等于1*2*3*4*5,结果为120。
number = int(input("请输入一个数字:")) mul = 1 for i in range(1,number+1): mul *= i print(mul)上述代码运行结果如下:
题目 - 05
#编程实现用户登录管理系统。提示用户输入用户名和密码,判断用户名和密码是否正确(要求用户名是admin,密码是123456)。如果正确,打印登录成功;如果错误,提示重新输入(最多可以尝试3次)。
for i in range(1,4): Name = str(input("请输入用户名:")) Password = int(input("请输入密码:")) if Name == 'admin' and Password ==123456: print("登录成功") break else: print(f"输入错误,请重新输入(最多可以尝试{3-i}次)") print("登录次数已用完!!!")上述代码运行结果如下:
题目 - 06
#根据n的不同的值,输出相应的形状。
num = int(input("请输入一个整数:")) for i in range(1,num+1): for n in range(num-i-1,-1,-1): print("",end="\t") for m in range(1,i): print(m,end="\t") for j in range(i,0,-1): print(j,end="\t") print("")上述代码运行结果如下:
题目 - 07
#编程实现如下功能:输入层数x,输出类似下面的等腰三角形(其中x=5时示例如下):
n = int(input("请输入金字塔层数:")) for i in range(1,n+1): for j in range(n-i-1,-1,-1): print(" ",end="") for k in range(1,2*i): print('*',end='') print('')上述代码运行结果如下:
题目 - 08
#求1--10000内的所有完美数。所谓的“完美数”是指,这个数的所有真因子(即除了自身的所有因子)的和恰好等于它本身。例如:6(6=1+2+3)和28(1+2+4+7+14)就是完美数。
for i in range(1,10001): sum = 0 for j in range(1,i): if i % j == 0: sum += j if sum == i: print(i)上述代码运行结果如下:
题目 - 09
#编程找出15个由1、2、3、4这4个数字组成的各位不相同的3位数(如134,反例如442、333)要求用break控制输出值的个数。
n = 0 for i in range(1,5): for j in range(1, 5): for k in range(1, 5): if i!=j and j!=k and i!=k: n += 1 print(f"{n}-{i*100+j*10+k}") if n==15: break if n==15: break if n==15: break上述代码运行结果如下:
题目 - 10
#“百马百担”问题:1匹大马能驮3担货,1匹中马能驮2担货,2匹小马能驮1担货,如果用100匹马驮100担货,问有大、中、小马各几匹?
for i in range(1,101): for j in range(1, 101): for k in range(1, 101): if i+j+k == 100 and 3*i+2*j+0.5*k == 100: print(f"大马有{i}匹,中马有{j}匹,小马有{k}匹。")上述代码运行结果如下:
题目 - 11
#计算1--100以内能被7或者3整除,但不能同时被这两个数整除的数的个数
n = 0 for i in range(1,101): if (i % (3*7) != 0) and (i % 3 ==0 or i % 7 ==0): n += 1 print(n)上述代码运行结果如下:
更多推荐













所有评论(0)