python控制语句小练习

目录

if控制语句练习题

for控制语句练习题

while控制语句练习题


if控制语句练习题

  • 猜拳游戏

1.从控制台输入你要出的拳 ---石头(1)/剪刀(2)/布(3)
2.电脑随即出拳
3.比较胜负

  • 判断闰年

用户输入年份,判断是否为闰年?
- 能被400整除的是闰年,能被4整除但是不能被100整除的是闰年

year = int(input('Year:'))

if (year % 4 == 0 and year % 100 != 0) \
        or (year % 400 == 0):
    print('%s是闰年' %year)
else:
    print('%s不是闰年' %year)
  • 输入年、月,输出本月有多少天

eg:

2004 2
29天
2010 4
30天

  • 判断用户的输入是否为空
value = input('Value:')

#if value == '':
#    print('Error')
if not value:
    print('Error')
  • 用户输入月份,打印该月份所属的季节(3,4,5春季  6,7,8夏季  9,10,11秋季 12 1 2冬季)

for控制语句练习题

  • 最大公因数和最小公倍数
#1.输入两个数字
num1 = int(input('Num1:'))
num2 = int(input('Num2:'))

#2.找出两个数中的最小值
min_num = min(num1,num2)

#3.最大公约数的范围在1~min_num之间
for i in range(1,min_num + 1):
    if num1 % i == 0 and num2 % i == 0:
        gys = i

#4.最小公倍数
gbs = int((num1 * num2) / gys)

print('%s和%s的最大公约数为:%s' %(num1,num2,gys))
print('%s和%s的最小公倍数为:%s' %(num1,num2,gbs))

  • 求1~100之间所有偶数之和

  • 求1~100之间所有奇数之和
sum = 0
for i in range(1,101,2):
     sum += i
print(sum)
  • 计算阶乘

  • 用户登录系统

用户登录需求:
    1.输入用户名和密码;
    2.判断用户名和密码是否正确(name='root',passwd='westos')
    3.登录仅有三次机会,超过3次会报错

for i in range(3):
    name = input('用户名:')
    passwd = input('密码:')
    if name == 'root' and passwd == 'westos':
        print('登录成功')
        break
    else:
        print('登录失败')
        print('您还剩余%d次机会' %(2 - i))
else:
    print('登录次数超过三次,请稍后登录')
  • 实现命令行提示符

执行结果:

  • 排列组合

"""
有1,2,3,4四个数字
求这四个数字能生成多少个互不相同且无重复数字的三位数
"""

 

while控制语句练习题

  • 猜数字游戏

    1.系统随机生成一个1~100的数字;
    2.用户共有5次机会猜;
    3.如果用户猜测数字大于系统给出的数字,打印"too big"
    4.如果用户猜测数字小于系统给出的数字,打印"too small"
    5.如果用户猜测的数字等于系统给出的数字,打印"恭喜中奖",
    并退出循环

  • 0~num求和

 

  • 登录系统

  • 在控制台连续输出五行*,每一行星号数量依次递增

*
**
***
****
*****

for lines in range(5):      #打印5行--lines取值0~4
    while lines >= 0:
        print('*',end='')
        lines -= 1
    print('')

*****
****
***
**
*

for lines in range(5):
    while lines < 5:
        print('*',end='')
        lines += 1
    print('')

    *
   **
  ***
 ****
*****

lines = 1
while lines <= 5:
    print(' '*(5-lines)+'*'*lines)
    lines += 1

*****
 ****
  ***
   **
    *

lines = 0
while lines <= 5:
    print(' '*lines+'*'*(5-lines))
    lines += 1
  • 输出9*9乘法口诀表,正向,反向4种方式

1.>

1*1=1

2*1=2 2*2=4

3*1=3 3*2=6 3*3=9

4*1=4 4*2=8 4*3=12 4*4=16

5*1=5 5*2=10 5*3=15 5*4=20 5*5=25

6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36

7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49

8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64

9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

i=1
while i<10:
    j=1
    while j <= i:
        print('%d*%d=%d' %(i,j,i*j),end=' ')
        j += 1
    print('\n')
    i+=1

2.>

1*9=9    1*8=8    1*7=7    1*6=6    1*5=5    1*4=4    1*3=3    1*2=2    1*1=1    
2*9=18    2*8=16    2*7=14    2*6=12    2*5=10    2*4=8    2*3=6    2*2=4    
3*9=27    3*8=24    3*7=21    3*6=18    3*5=15    3*4=12    3*3=9    
4*9=36    4*8=32    4*7=28    4*6=24    4*5=20    4*4=16    
5*9=45    5*8=40    5*7=35    5*6=30    5*5=25    
6*9=54    6*8=48    6*7=42    6*6=36    
7*9=63    7*8=56    7*7=49    
8*9=72    8*8=64    
9*9=81

i=1
while i<10:
    j=9
    while j >= i:
        print('%d*%d=%d\t' %(i,j,i*j),end='')
        j -= 1
    print(' ')
    i+=1

3.>

i=9
while i>0:
    j=1
    k=8
    while k >= i:
        print('\t\t',end='')
        k -= 1
    while j<= i:
        print('%d*%d=%d\t' %(i,j,i*j),end=(''))
        j += 1
    print('')
    i-=1

4.>

i=1    #行
while i<=9:
    j=1   #列
    k=1   #制表位
    while k <= (9-i):
        print('\t\t',end='')
        k += 1
    while j<=i:
        print('%d*%d=%d\t' %(i,j,i*j),end=(''))
        j+=1
    print(' ')
    i+=1

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值