用c语言写一个图书信息管理系统首页面包括登录,注册,退出的功能,登录和注册成功后能实现按任意键进入主菜单页面
时间: 2024-03-27 14:36:08 浏览: 51
好的,以下是一个简单的图书信息管理系统首页面代码,包括登录,注册,退出的功能,登录和注册成功后能实现按任意键进入主菜单页面:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/* 定义最大用户数量 */
#define MAX_USERS 10
/* 定义用户结构体 */
typedef struct {
char username[20];
char password[20];
} User;
/* 定义全局用户数组 */
User users[MAX_USERS];
/* 定义当前用户数量 */
int user_count = 0;
/* 登录函数 */
void login() {
char username[20];
char password[20];
printf("请输入用户名:");
scanf("%s", username);
printf("请输入密码:");
scanf("%s", password);
/* 遍历用户数组,查找是否存在该用户 */
for (int i = 0; i < user_count; i++) {
if (strcmp(users[i].username, username) == 0 && strcmp(users[i].password, password) == 0) {
printf("登录成功!\n");
printf("按任意键进入主菜单...\n");
getchar(); /* 消费掉输入缓冲区中的换行符 */
getchar(); /* 等待用户按任意键 */
return;
}
}
printf("登录失败!请检查用户名和密码是否正确。\n");
}
/* 注册函数 */
void register_user() {
char username[20];
char password[20];
/* 判断用户数量是否已经达到最大值 */
if (user_count >= MAX_USERS) {
printf("用户数量已达上限,无法注册新用户。\n");
return;
}
printf("请输入用户名:");
scanf("%s", username);
printf("请输入密码:");
scanf("%s", password);
/* 遍历用户数组,查找用户名是否已存在 */
for (int i = 0; i < user_count; i++) {
if (strcmp(users[i].username, username) == 0) {
printf("用户名已存在,请重新输入。\n");
return;
}
}
/* 将新用户添加到用户数组中 */
strcpy(users[user_count].username, username);
strcpy(users[user_count].password, password);
user_count++;
printf("注册成功!\n");
printf("按任意键进入主菜单...\n");
getchar(); /* 消费掉输入缓冲区中的换行符 */
getchar(); /* 等待用户按任意键 */
}
int main() {
int choice;
while (1) {
printf("欢迎使用图书信息管理系统!\n");
printf("1.登录\n");
printf("2.注册\n");
printf("3.退出\n");
printf("请输入您的选择:");
scanf("%d", &choice);
switch (choice) {
case 1:
login();
break;
case 2:
register_user();
break;
case 3:
printf("谢谢使用!\n");
exit(0);
default:
printf("无效的选择,请重新输入。\n");
break;
}
}
return 0;
}
```
阅读全文