功能:输入自己的学号和名字后,提示设6位登录密码,对输入密码进行加密处理并存储,然后提示确认密码并输入密码,对输入密码与原密码进行验证,错误密码输入次数超过三次则程序结束。
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define MAX_PASSWORD_LEN 6 // 密码的最大长度
#define MAX_TRIES 3 // 最大尝试次数
int main() {
char id[16]; // 学号
char name[16]; // 名字
char password[MAX_PASSWORD_LEN + 1]; // 密码
char confirmed_password[MAX_PASSWORD_LEN + 1]; // 确认密码
int i;
int tries = 0; // 尝试次数
// 输入学号和名字
printf("Enter your ID: ");
scanf("%s", id);
printf("Enter your name: ");
scanf("%s", name);
// 提示设置密码
printf("Set your password (6 characters max): ");
scanf("%s", password);
// 对密码进行加密处理
for (i = 0; i < strlen(password); i++) {
password[i] = toupper(password[i]);
}
// 提示确认密码
printf("Confirm your password: ");
scanf("%s", confirmed_password);
// 验证密码
while (strcmp(password, confirmed_password) != 0 && tries < MAX_TRIES) {
printf("Wrong password. Try again: ");
scanf("%s", confirmed_password);
tries++;
}
// 判断是否超过最大尝试次数
if (tries == MAX_TRIES) {
printf("Exceeded maximum number of tries.\n");
} else {
printf("Password set successfully.\n");
}
return 0;
}