I am a teacher!

导航

习题解析之:用户登录C

【问题描述】
实现用户输入用户名和密码,当用户名为 admin 或 administrator 且密码为 012345 时,显示登录成功,否则显示登录失败,登录失败时允许重复输入三次。

输入格式
用户在两行里分别输入用户名和密码

输出格式
登录成功或登录失败

示例
输入:
admin
012345
输出:
登录成功

【编程思路】

        直接用 for i in range(3) 循环处理登录失败时允许重复输入三次。在循环体中输入用户名和密码后进行判断,若登录成功,用 break 语句退出循环。编写源程序如下:

image

         注意:若程序中的语句 if (username == 'admin' or username == 'administrator') and password == '012345': 写成

                    if  username == 'admin' or username == 'administrator'  and password == '012345': ,
                    程序在执行时,只要用户名输入 admin ,密码输入任意字符串,都会登录成功。这是由于 and 的优先级高于 or 导致的。
                    即语句 if  username == 'admin' or username == 'administrator'  and password == '012345': 实际上等价于
                    if  username == 'admin' or (username == 'administrator'  and password == '012345') 。

posted on 2025-11-12 16:15  aTeacher  阅读(15)  评论(0)    收藏  举报