用C语言实现输入密码以星号显示并判断密码是否正确
/*
程序简介:用C语言实现输入密码以星号显示并判断密码是否正确
程序设计者:calm
程序设计时间:2007-12-06 21:22
*/
#include<stdio.h>
#include<string.h>
#include<conio.h>
#define N 20
#define BACKSPACE 8
void GetPassWord(char *p)
{
printf("password:");
int i=0;
while((*(p+i)=getch())!='\r')
{
if(*(p+i)==BACKSPACE&&i>0)
{
i--;
putchar('\b');
putchar(' ');
putchar('\b');
}
else
{
putchar('*');
i++;
}
}
putchar('\n');
}
int Check(char *p,char *m,int n)
{
for(int i=0;*(p+i)!='\r';i++)
{
if(*(p+i)!=*(m+i))return 0;
}
return 1;
}
void main()
{
char a[N];
char b[]={'1','2','3','4'};
GetPassWord(a);
if(Check(a,b,N))
{
printf("the password is right!");
}
else
{
printf("the password is wrong!");
}
getch();
}