模拟用户登陆系统
编程实现用户登陆,用户输入密码,若密码正确则输出“密码正确!”;若密码不正确,则输入:“密码不正确,请重新输入!” ;用户可以输入三次,若三次均不正确,则输出“登陆失败!”
程序思路:
1.输入三次可以调用for循环;
2.设置程序密码,定义密码字符串;
3.提示用户输入,输入后比较
4.调用 strcmp()函数比较字符串;即匹配密码;
5.若密码正确,跳出循环,并输出“登陆成功!”;
6.若密码不正确,循环继续,三次失败,则“登陆失败”
7.该程序的关键是循环结束后判断是否输入登陆成功。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <string.h>
int main(){
//编写代码模拟三次密码输入场景。
//最多能输入三次,密码正确,提示“登陆成功”,密码错误,
//可以重新输入三次,最多输入三次。三次均错,提示退出系统。
//1.定义“密码”
int i = 0; //i的值反应输入密码次数
for (i = 0; i < 3; i++){
printf("############################\n");
printf(" 请输入密码:\n");
printf("############################\n");
char password[1024] = {0};
scanf("%s", password);
if (strcmp(password,"123456")==0){//stramp(a,b) 字符串比较函数 基于ASCII码值的比较
//若a>b 返回正数 ;若a<b 返回负数;若a=b 返回0
break;
}
printf("############################\n");
printf(" 密码错误,请重新输入!\n");//包含在for循环体中
printf("############################\n");
}//循环结束;
if (i<3){//循环结束条件 1.密码正确;2.输入三次均错误。
printf("############################\n");
printf("登陆成功!\n");
printf("############################\n");
}
else{
printf("############################\n");
printf("登陆失败!\n");
printf("############################\n");
}
system("pause");
}
程序运行结果: