欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

基础练习题

程序员文章站 2022-04-03 17:13:48
...

练习一:

- 输入学生姓名;
- 依次输入学生的三门科目成绩;
- 计算该学生的平均成绩, 并打印;
- 平均成绩保留一位小数点;
- 计算该学生语文成绩占总成绩的百分之多少?并打印。eg: 78%

name = raw_input("学生姓名:")
chinese = float(raw_input("语文成绩:"))
math = float(raw_input("数学成绩:"))
english = float(raw_input("英语成绩:"))

# 总成绩
sumScore = chinese+math+english
# 求平均成绩
avgScore = sumScore/3
# 求百分比, 0.33*100 = 33.33    ----- 33.33%
chinesePercent = (chinese / sumScore)*100

print("%s 的平均成绩为%.2f" %(name, avgScore))
print("语文成绩占总成绩的%.2f%%" %(chinesePercent))

基础练习题

练习二:剪刀石头布游戏

import random
# 1.从控制台输入要出的拳(石头1/剪刀2/布3)
player = int(raw_input('请输入您要出的拳:石头1/剪刀2/布3:'))

# 2.电脑出拳
computer = random.randint(1,3)
print computer

# 3.比较胜负
"""
石头胜剪刀
剪刀胜布
布胜石头
"""
if ((player == 1 and computer == 2)
    or (player == 2 and computer == 3) \
            or (player == 3 and computer == 1)):
    print '玩家胜利了~'
elif player == computer:
    print '平局'
else:
    print '玩家输了~'

基础练习题

  输入年、月,输出本月有多少天。合理选择分支语句完成设计任务。
    输入样例1:2004 2
    输出结果1:本月29天
    输入样例2:2010 4
    输出结果2:本月30天

基础练习题

猜数字游戏

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

实现命令行提示符雏形

import os

while True:
    cmd = raw_input('[aaa@qq.com ~]$')
    if cmd:
        if cmd == 'exit':
            print 'logout'
            break
            #print 'hello'
        else:
            print 'run %s' % cmd
            # 运行shell命令
            os.system(cmd)
    else:
        continue
        

基础练习题

用户登陆程序需求:
    1. 输入用户名和密码;
    2. 判断用户名和密码是否正确? (name='root', passwd='westos')
    3. 为了防止暴力**, 登陆仅有三次机会, 如果超过三次机会, 报错提示

for i in range(3):
    name = raw_input('用户名:')
    passwd = raw_input('密码:')
    if name == 'root' and passwd == 'westos':
        print '登陆成功'
        break
    else:
        print '登陆失败'
        print '您还剩余%d次机会' %(2-i)

# 循环执行结束后执行的代码
else:
    print '登陆次数超过三次,请等待100s后再次登陆'

输入两个数值:
    求两个数的最大公约数和最小公倍数.
    最小公倍数=(num1*num2)/最大公约数

num1 = int(raw_input('Num1:'))
num2 = int(raw_input('Num2:'))
min_num = min(num1, num2)
for i in range(1, min_num + 1):
    if num1 % i == 0 and num2 % i == 0:
        # 当循环结束,保存最大公约数
        gys = i
lcm = (num1 * num2)/gys
print '%s和%s的最大公约数为%s' %(num1,num2,gys)
print '%s和%s的最小公倍数为%s' %(num1,num2,lcm)

基础练习题