大家一起学python-day4-大四课程结束作业-写一个学生成绩管理系统

#幸好老师给了个函数框架,挺好用,用了几个小时写的,基本不会出现语法错误,有些小逻辑不对(如功能用完返回到那个函数界面等),无大碍!不改了,头发已经掉光。

# 放在外面,用来存储学生账号,学号,学生姓名和成绩等
# 学生端:用于存储学生的账号和密码,只有匹配正确才能进入学生端
xueshengzhanghao = ['12345']
xueshengmima = ['12345']
c = ['陈思宇']  # 用于存储学生信息
d = ['100']  # 用处存储学生成绩

# 教师端:用于存储教师的账号和密码,只有匹配正确才能进入教师端
jiaoshizhanghao = ['12345']
jiaoshimima = ['12345']

chengji = []  # 成绩有误数组
# 当学生发现成绩有误,则可告诉老师成绩有误,老师会定期查看
# 学生端
def student():
    while True:
        print('----------------------')
        print("欢迎进入学生成绩管理系统")
        print("退出请输出一个空格按回车")
        print('----------------------')
        zh = input("请输入账号: ")
        if zh == ' ':
            main()
        if zh not in xueshengzhanghao:
            print("请输入您的密码:")
            print("账号错误,请重新输入!")
            continue
        p = xueshengzhanghao.index(zh)  # p是账号
        powerword = input("请输入您的密码:")
        if powerword == xueshengmima[p]:
            print("登陆成功")
            print('----------------------------------------')
            print("学生端功能有:")
            print("1.可查看自己的各项成绩(只可查看自己的成绩)")
            print("2.若成绩有错误,可上报老师")
            print("退出请输出一个空格按回车")
            print('---------------------------------------')
            print("查看成绩选择1,退到上一级按任意键")
            l = input("请选择:")
            if l == '1':
                name = input("请输入您的姓名")
                if name in c:
                    if c.index(name) == xueshengzhanghao.index(zh):
                        b = c.index(name)  # 索引计数
                        print("您的成绩为:", d[b])
                        print("有异议按1,无异议按任意键")
                        h = input("您是否对您的成绩有异议?")
                        if h =='1':
                            c.append(name)
                            print("已上报给老师")
                            print("退出程序!")
                        else:
                            pass

                    else:
                        print("您的权限不足!无权查看")
                else:
                    print("您的成绩还未更新,或没有考试(无成绩)")
            else:
                print("正在退出...返回主菜单")
                main()
# 教师端
def teacher():
    while True:
        print('----------------------')
        print("欢迎进入教师成绩管理系统")
        print("退出请输出一个空格按回车")
        print('----------------------')
        zh = input("请输入账号: ")
        if zh == ' ':
            main()
        if zh not in jiaoshizhanghao:
            print("请输入您的密码:")
            print("账号错误,请重新输入!")
            continue
        p = jiaoshizhanghao.index(zh)  # p是账号
        laoshipowerword = input("请输入您的密码:")
        if laoshipowerword == jiaoshimima[p]:
            print("登陆成功....")
            print("教师端功能有:")
            print("1.可新增学生信息和成绩")
            print("2.可查看学生成绩")
            print('3.可修改学生信息')
            print("4.可删除学生成绩")
            print("5.查看对成绩有异议的学生")
            print("退出程序按任意键")
            e = input("请选择您的选项:")
            if e == '1':
                xinzeng()
            elif e == '2':
                chaxun()
            elif e == '3':
                xiugai()
            elif e == '4':
                shanchu()
            elif e == '5':
                yiyi()
        else:
            print("输入错误!请重新输入")
            continue
# 教师端新增学生信息和成绩
def xinzeng():
    while True:
        print('---------')
        name = input('请输入学生的姓名:')
        num = input("请输入学生的成绩:")
        c.append(name)
        d.append(num)
        print("成绩已经保存成功")
        # 保存成绩后,可再次保存
        x = input("继续保存请按1,退出按任意键!")
        if x == '1':
            continue
        else:
            teacher()
# 教师端查询学生成绩
def chaxun():
    while True:
        print('---------')
        name = input("请输入需要查询的学生姓名:")
        if name in c:
            b = c.index(name)
            print("您所查询的学生成绩是:", d[b])
        else:
            print("暂无信息(未更新或者无)")
        x = input("继续查看请按1,退出按任意键!")
        if x == '1':
            continue
        else:
            teacher()
# 教师端删除
def shanchu():
    while True:
        a = input("请输入学生姓名")
        if a in c:
            e = c.index(a)  # e是学生表中的索引值
            d[e] = '0(成绩已被删除)'
            teacher()
        else:
            print('没有可以查询的信息')
            main()
# 教师端修改
def xiugai():
    while True:
        a = input("请输入学生姓名")
        j = input("请输入需要修改的成绩")
        if a in c:
            e = c.index(a)  # e是学生表中的索引值
            d[e] = j
            break
        else:
            print('没有可以查询的信息')
            main()

#查看对成绩有异议的学生
def yiyi():
    print("欢迎进入成绩查看系统")
    print("以下是对成绩有异议的学生名单")
    print("-------------------------")
    print(chengji)
    teacher()
# 菜单端
def menu():
    print("----------------------")
    print("欢迎进入学生成绩管理系统")
    print("教师登陆请按1")
    print("学生登陆请按2")
    print("退出请按任意键")
    print("----------------------")
# 主函数
def main():
    while True:
        menu()
        a = input("请选择您需要登陆的类别:")
        if a == '1':
            teacher()
        elif a == '2':
            student()
        else:
            print('退出系统')
            break
main()


猜你喜欢

转载自blog.csdn.net/weixin_44239343/article/details/85301782