C语言求助,如果可以回删已经显示的星号要怎么写
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<conio.h>intmain(){chara...
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>
int main()
{
char a[16],b[16];
char username[]="f123";
char password[]="f321";
do
{
printf("username:");
gets(a);
printf("password:");
for(int i=0;;i++)
{
b[i]=getch();
if(b[i]=='\r')
{
b[i]='\0';
break;
}
printf("*");
}
if (strcmp(a,username)==0 && strcmp(b,password)==0)
{
printf("----欢迎登录----\n");
return 0;
}
else
{
printf("\n用户名或密码错误\n\n");
}
}
while(!0);
}
添加else if(b[i]=='\b') { printf("\b \b"); continue; },这样回删不行,回删重新输入登录不进去 展开
#include<string.h>
#include<stdlib.h>
#include<conio.h>
int main()
{
char a[16],b[16];
char username[]="f123";
char password[]="f321";
do
{
printf("username:");
gets(a);
printf("password:");
for(int i=0;;i++)
{
b[i]=getch();
if(b[i]=='\r')
{
b[i]='\0';
break;
}
printf("*");
}
if (strcmp(a,username)==0 && strcmp(b,password)==0)
{
printf("----欢迎登录----\n");
return 0;
}
else
{
printf("\n用户名或密码错误\n\n");
}
}
while(!0);
}
添加else if(b[i]=='\b') { printf("\b \b"); continue; },这样回删不行,回删重新输入登录不进去 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询