使用C语言编写一个简单的宠物信息管理系统的代码,首先实现用户的登录和注册
时间: 2023-03-22 13:01:19 浏览: 59
好的,以下是一个简单的宠物信息管理系统的C语言代码,其中包含用户的登录和注册功能。请注意,本代码仅供参考,可能存在缺陷和需要改进的地方,具体实现需要根据实际情况进行调整。
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_USERS 100 // 最大用户数量
#define MAX_PETS 1000 // 最大宠物数量
#define MAX_NAME_LENGTH 20 // 用户名和宠物名的最大长度
#define MAX_PASSWORD_LENGTH 20 // 密码的最大长度
struct User {
char name[MAX_NAME_LENGTH];
char password[MAX_PASSWORD_LENGTH];
};
struct Pet {
char name[MAX_NAME_LENGTH];
int age;
char type[MAX_NAME_LENGTH];
};
struct User users[MAX_USERS];
int user_count = 0;
struct Pet pets[MAX_PETS];
int pet_count = 0;
// 用户登录
int login() {
char name[MAX_NAME_LENGTH];
char password[MAX_PASSWORD_LENGTH];
printf("请输入用户名:");
scanf("%s", name);
printf("请输入密码:");
scanf("%s", password);
for (int i = 0; i < user_count; i++) {
if (strcmp(users[i].name, name) == 0 && strcmp(users[i].password, password) == 0) {
printf("欢迎回来,%s!\n", name);
return i; // 返回用户在数组中的索引
}
}
printf("用户名或密码错误!\n");
return -1;
}
// 用户注册
void register_user() {
if (user_count >= MAX_USERS) {
printf("用户数量已达上限,无法注册新用户!\n");
return;
}
char name[MAX_NAME_LENGTH];
char password[MAX_PASSWORD_LENGTH];
printf("请输入用户名:");
scanf("%s", name);
for (int i = 0; i < user_count; i++) {
if (strcmp(users[i].name, name) == 0) {
printf("该用户名已被占用,请重新输入!\n");
return;
}
}
printf("请输入密码:");
scanf("%s", password);
strcpy(users[user_count].name, name);
strcpy(users[user_count].password, password);
user_count++;
printf("注册成功!\n");
}
int main() {
int choice;
while (1) {
printf("请选择操作:\n");
printf("1. 用户登录\n");
printf("2. 用户注册\n");
printf("3. 退出程序\n");
scanf("%d", &choice);
switch (choice) {
case 1:
login();
break;
case 2:
register_user();
break;
case 3:
printf("再见!\n");
return 0;
default:
printf("无效的选择,请重新输入!\n");
}
}
return 0;
}
```