C++编程怎样让密码输入变成"*"号或者其它符号

这是我写的密码代码,不知道怎样才能让密码输入变成"*"号或者其它符号voidpasswd()//密码函数{voidshowMenu();stringtemp;intn=0... 这是我写的密码代码,不知道怎样才能让密码输入变成"*"号或者其它符号
void passwd() //密码函数
{void showMenu();
string temp;
int n=0;
system("cls");
cout<<"\n\n\n\n\n\n";
cout<<"\t\t\t欢迎使用学生考勤管理系统!"<<endl;
cout<<"\t\t\t密码:";
while(n<3)
{
cin>>temp;

if(temp==PASSWD)
{
showMenu();
}
else
{
cout<<"密码有误,请重新输入:";

}
n++;
}
cout<<"输入密码错误超过3次,系统将自动退出!"<<endl;
getch();
out();
}
展开
 我来答
希声和寡
2008-12-14 · TA获得超过2.6万个赞
知道大有可为答主
回答量:6437
采纳率:0%
帮助的人:3437万
展开全部
改法:
1. 使用getch()
2. 使用字符数组

在你的代码上作了一个验证程序,相信你很快能看明白:
============
如下代码已经编译运行确认:

#include<stdio.h>
#include<stdlib.h>
#include <conio.h>
#include<iostream.h>

void main()
{
char temp[10]={0};
char tep;
int i;

i = 0;

cout<<"\n\n\n\n\n\n";
cout<<"\t\t\t欢迎使用学生考勤管理系统!"<<endl;
cout<<"\t\t\t密码:";
while(i<3)
{
//cin>>temp;

while(1)
{
tep = getch();

if(tep != '\r')
{
printf("*");
temp[i++] = tep;
}
else break;

}

printf("\n");

for(int j =0 ;j<10;j++)
printf("%c",temp[j]);

if(1)
{
cout<<"密码OK";
}
else
{
cout<<"密码有误,请重新输入:";

}
i++;
}
cout<<"输入密码错误超过3次,系统将自动退出!"<<endl;
getch();

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
世镶柳009
2008-12-14 · TA获得超过3017个赞
知道答主
回答量:2928
采纳率:0%
帮助的人:2473万
展开全部
参考代码:
01 #include <stdio.h>
02 #include <curses.h>
03 int main()
04 {
05 char c[100] = {0};
06 int i = 0;
07 while ((c[i] = getch()) != '\n')
08 i++;
09 return 0;
10 }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式