重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
c语言中可采用getch()函数来实现输入密码字符时,不显示字符到终端上,这时,只需要显示出一个相应的*就可以达到效果了。参考代码及运行效果如下图:
10年积累的成都做网站、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先建设网站后付款的网站建设流程,更有东阳免费网站建设让你可以放心的选择与我们合作。
代码如下:
#includestdio.h
#pragma warning(disable:4996)
#includestring.h
int main()
{
int i = 0;
char password[10] = { 0 };
printf("请输入密码:");
while (i 3)
{
scanf("%s", password);
printf("\n");
if (strcmp(password, "972816") == 0)
{
printf("登录成功\n");
break;
}
else
{
i++;
if (i != 3)
printf("再输入一次");
}
}
if (i == 3)
printf("密码错误三次退出登录界面\n");
system("pause");
return 0;
扩展资料:
#include后面有两种方式,;和""前者先在标准库中查找,查找不到在path中查找。后者为文件路径,若直接是文件名则在项目根目录下查找。
引用方法:#include stdio.h
注意事项:在TC2.0中,允许不引用此头文件而直接调用其中的函数,但这种做法是不标准的。也不建议这样做。以避免出现在其他IDE中无法编译或执行的问题。
参考资料来源:百度百科—include
参考资料来源:百度百科—stdio.h
是三种不同的函数验证登陆吧,check1、check2、check3三类函数分别如下:
void check1()输入输出功能全部在函数完成;
void check2(name,pass)输入在main中传入函数进行判断输出;
int check3(name,pass)输入输出均在main函数完成,函数只做判断返回结果。
#include "stdafx.h"
#include iostream
#include string
void check1()
{
char name[10], pass[10];
printf("请输入账号和密码:\n");
scanf_s("%s%s", name, 10, pass, 10);
if (!strcmp(name,"admin")!strcmp(pass,"123"))
printf("账号密码正确!\n");
else
printf("账号或密码错误!\n");
}
void check2(char *n, char *p)
{
if (!strcmp(n, "admin") !strcmp(p, "123"))
printf("账号密码正确!\n");
else
printf("账号或密码错误!\n");
}
int check3(char *n, char *p)
{
if (!strcmp(n, "admin") !strcmp(p, "123"))
return 1;
else
return 2;
}
int main()
{
char name[10], pass[10];
check1();
printf("请输入账号和密码:\n");
scanf_s("%s%s", name, 10, pass, 10);
check2(name, pass);
printf("请输入账号和密码:\n");
scanf_s("%s%s", name, 10, pass, 10);
if(check3(name,pass)==1)
printf("账号密码正确!\n");
if(check3(name,pass)==2)
printf("账号或密码错误!\n");
system("pause");
return 0;
}
可以定义两个字符数组;
一个存放正确密码;
另一个数组内的内容由用户输入;
调用strcmp函数,若返回值为0则说明两者完全相等;
列子:
char a[10]="4488" //保存正确密码
char b[10];
gets(b) //用户输入
if(strcmp(a,b)==0)
printf(" 匹配成功 ");
else
printf("匹配失败");
更多追问追答
追问
#include
void main()
{
char a[10]="8844";
char b[10];
gets(b)
if(strcmp(a,b)==0)
printf("yes");
else
printf("no");
getch();
#include stdio.h
#include conio.h
#include string.h
#include stdlib.h
int chcode() {
char pw[50],ch;
char *syspw = "abc"; // 原始密码
int i,m = 0;
printf("请输入密码:");
while(m 3) {
i = 0;
while((ch = _getch()) != '\r') {
if(ch == '\b' i 0) {
printf("\b \b");
--i;
}
else if(ch != '\b') {
pw[i++] = ch;
printf("*");
}
}
pw[i] = '\0';
printf("\n");
if(strcmp(pw,syspw) != 0) {
printf("密码错误,请重新输入!\n");
m++;
}
else {
printf("密码正确!\n");
system("pause");
return 1;
}
}
printf("连续3次输入错误,退出!\n");
system("pause");
return 0;
}
int main() {
int login = chcode();
if(login) printf("登录成功!\n");
else printf("登录失败!\n");
return 0;
}