初学者问题:c语言如何用星号代替密码
举个例子,main()printf("输入账号:");scanf("%d",a);printf("密码");scanf("%d"b);但是这样屏幕上就显示出密码来了我想实...
举个例子,
main()
printf("输入账号:");
scanf("%d",a);
printf("密码");
scanf("%d"b);
但是这样 屏幕上就显示出密码来了 我想实现输入密码时屏幕上显示的是星号 ,可以办得到吗? 展开
main()
printf("输入账号:");
scanf("%d",a);
printf("密码");
scanf("%d"b);
但是这样 屏幕上就显示出密码来了 我想实现输入密码时屏幕上显示的是星号 ,可以办得到吗? 展开
展开全部
你可以用ch=getch()
main()
{
int a;
char ch;
printf("输入账号:");
scanf("%d",a);
printf("密码");
ch=getch();
printf("*");
}
如果密码不止一位你可以用数组存起来
while(ch!=13)
{
ch=getch();
printf("*");
code[i]=ch;
i=i+1;
}
我试过的,当然可以用~
给你看我原程序
char name[10],password[10],ch; //用户输入登录信息
int i=0;
printf("Login...\n"); //提示用户登录
printf("name:");
scanf("%s",name); //用户输入用户名
getchar(); //吸收回车符
printf("password:");
ch=getch(); //逐个获取用户输入的密码
while(ch!=13) //用户密码输入未结束
{
printf("*");
password[i]=ch; //赋值
i=i+1; //下一个字符
if(ch==8) //退格
i=i-1;
ch=getch();
}
password[i]='\0'; //字符串末尾加结束符
部分而已,要加头文件#include <conio.h>
main()
{
int a;
char ch;
printf("输入账号:");
scanf("%d",a);
printf("密码");
ch=getch();
printf("*");
}
如果密码不止一位你可以用数组存起来
while(ch!=13)
{
ch=getch();
printf("*");
code[i]=ch;
i=i+1;
}
我试过的,当然可以用~
给你看我原程序
char name[10],password[10],ch; //用户输入登录信息
int i=0;
printf("Login...\n"); //提示用户登录
printf("name:");
scanf("%s",name); //用户输入用户名
getchar(); //吸收回车符
printf("password:");
ch=getch(); //逐个获取用户输入的密码
while(ch!=13) //用户密码输入未结束
{
printf("*");
password[i]=ch; //赋值
i=i+1; //下一个字符
if(ch==8) //退格
i=i-1;
ch=getch();
}
password[i]='\0'; //字符串末尾加结束符
部分而已,要加头文件#include <conio.h>
展开全部
#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;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上的,你自己试过没有啊
那样也是不行的
那样也是不行的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询