Python计算机二级考试备考

#输入一个年份,输出是否为闰年
#(闰年分为普通闰年(4的倍数但不是100的倍数)和世纪闰年(400的倍数))
a=eval(input("请输入一个年份:"))
##if a%400==0 or (a%4==0 and a%100!=0):
##    b=""
##else:
##    b="不"

#更简洁表达式
b="" if a%400==0 or (a%4==0 and a%100!=0) else"不" 
print("{}年{}是闰年".format(a,b))

#计算最大公约数,最小公倍数
#获得两个整数,求两个整数的最大公约数和最小公倍数
#欧几里得算法
a=eval(input("请输入一个非负整数:"))
b=eval(input("请再输入一个非负整数:"))
a0,b0=a,b
while a0%b0!=0:
    a0,b0=b0,a0%b0
c=a*b/b0
print("{}和{}的最大公约数是{},最小公倍数是{}".format(a,b,b0,c))

#统计不同字符的个数
N=M=X=Y=Z=0
a=input("请输入一串字符:")  
for c in a:
    if str.isspace(c)==True:  #判断是否为空格
        N+=1
    elif str.isdigit(c)==True:#判断是否为数字
        M+=1
    elif str.isalpha(c)==True:#判断是否为字母(中文会被判断成字母)
        if not '\u4e00' <= c <= '\u9fa5':#判断是否为中文字符
            X+=1              
        else:                 #英文字符
            Z+=1              
    else:                     #其他字符
        Y+=1 
print("中文字符个数{},\
        英文字符个数{},\
        数字字符个数{},\
        空格字符个数{},\
        其他字符个数{}。".format(X,Z,M,N,Y))

#猜数字游戏
import random
target=random.randint(1,1000)
count=0
while True:#判断
    try:
        guess=eval(input("请输入一个整数(1到1000):"))
        if type(guess)==type(0.1):
            print("您输入的是小数,应输入整数!")
            continue
    except:
         print("您输入的不是数字,应输入整数!")
         continue
    count+=1
    if guess>target:
        print("猜大了")
    elif guess<target:
        print("猜小了")
    else:
        print("恭喜你,猜对了!")
        break
print("此轮的猜测次数为{}次".format(count))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值