用while循环处理用户登录界面用户名密码判断
时间: 2023-09-14 09:07:16 浏览: 340
好的,以下是一个简单的示例代码,可以帮助您用 while 循环处理用户登录界面,判断用户名和密码是否正确:
```
# 定义用户名和密码
username = "user"
password = "12345"
# 循环处理用户登录
while True:
# 显示登录界面,获取用户输入的用户名和密码
input_username = input("请输入用户名:")
input_password = input("请输入密码:")
# 判断用户名和密码是否正确
if input_username == username and input_password == password:
print("登录成功!")
break # 跳出循环
else:
print("用户名或密码错误,请重新输入。")
```
这个代码会不断循环,直到用户输入正确的用户名和密码为止。在循环中,首先会显示登录界面,要求用户输入用户名和密码。然后,代码会检查用户输入的用户名和密码是否与预定义的值匹配。如果匹配,则输出“登录成功!”并跳出循环。否则,代码会输出“用户名或密码错误,请重新输入。”,并要求用户再次输入用户名和密码。
相关问题
如何用C语言设计用户登录界面
要设计一个简单的用户登录界面,可以使用C语言中的基本输入输出库和字符串操作库。以下是一个简单的实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char username[20];
char password[20];
int login_successful = 0;
printf("Welcome to the login page!\n");
while (!login_successful) {
printf("Enter username: ");
scanf("%s", username);
printf("Enter password: ");
scanf("%s", password);
if (strcmp(username, "admin") == 0 && strcmp(password, "password") == 0) {
login_successful = 1;
printf("Login successful!\n");
} else {
printf("Incorrect username or password. Please try again.\n");
}
}
return 0;
}
```
这个程序使用了一个while循环来不断要求用户输入用户名和密码,直到登录成功为止。在每次循环中,程序会让用户输入用户名和密码,并将其存储在相应的字符数组中。然后,程序会使用strcmp函数来比较输入的用户名和密码是否与预设的值相同。如果是,程序将设置login_successful变量为1,表示登录成功,并输出一条成功信息。否则,程序将输出一条错误信息,并继续等待用户输入。
用easyx做用户登录界面
好的,下面是一个简单的示例代码,演示如何使用easyx库实现一个用户登录界面。
```c++
#include <graphics.h>
#include <conio.h>
#include <string.h>
int main()
{
// 初始化窗口
initgraph(400, 300);
// 绘制登录界面
setbkcolor(WHITE); // 设置背景色为白色
cleardevice(); // 清屏
// 绘制标题
settextstyle(30, 0, _T("微软雅黑"));
settextcolor(BLACK);
outtextxy(100, 50, _T("用户登录"));
// 绘制用户名和密码输入框
settextstyle(20, 0, _T("微软雅黑"));
settextcolor(BLACK);
outtextxy(50, 100, _T("用户名:"));
rectangle(150, 100, 350, 130);
outtextxy(50, 150, _T("密 码:"));
rectangle(150, 150, 350, 180);
// 绘制登录按钮
setfillcolor(BLUE);
settextcolor(WHITE);
solidrectangle(150, 200, 250, 230);
outtextxy(180, 206, _T("登录"));
// 循环等待用户输入
char username[20] = {0};
char password[20] = {0};
int x, y;
while (true)
{
// 检测鼠标事件
if (MouseHit())
{
MOUSEMSG msg = GetMouseMsg();
x = msg.x;
y = msg.y;
// 检测是否点击了登录按钮
if (x >= 150 && x <= 250 && y >= 200 && y <= 230)
{
// 获取输入的用户名和密码
getInputText(150, 100, 200, username);
getInputText(150, 150, 200, password);
// 检测用户名和密码是否正确
if (strcmp(username, "admin") == 0 && strcmp(password, "123456") == 0)
{
// 登录成功,退出循环
break;
}
else
{
// 登录失败,弹出提示窗口
MessageBox(GetHWnd(), _T("用户名或密码错误!"), _T("提示"), MB_OK | MB_ICONEXCLAMATION);
}
}
}
}
// 关闭窗口
closegraph();
return 0;
}
// 获取输入框中的文本内容
void getInputText(int x, int y, int width, char* text)
{
int ch;
int i = 0;
settextstyle(20, 0, _T("微软雅黑"));
settextcolor(BLACK);
rectangle(x, y, x + width, y + 30);
while (true)
{
ch = getch();
if (ch == 13) // 回车键,结束输入
{
break;
}
else if (ch == 8) // 退格键,删除上一个字符
{
if (i > 0)
{
i--;
outtextxy(x + 5 + i * 15, y + 5, _T(" "));
}
}
else if (ch >= 32 && ch <= 126) // 可见字符,追加到输入框中
{
if (i < width / 15 - 1)
{
text[i] = ch;
i++;
outtextxy(x + 5 + (i - 1) * 15, y + 5, _T("*"));
}
}
}
text[i] = '\0'; // 添加字符串结束符
}
```
这个示例代码实现了一个简单的用户登录界面,包括用户名和密码输入框以及登录按钮。当用户点击登录按钮时,程序会获取输入框中的文本内容,并检测用户名和密码是否正确。如果正确则登录成功,否则弹出提示窗口。
注意:这个示例代码仅供参考,实际上线应用中需要进行更加严格的用户验证和安全措施。