在C语言中怎样输入字符时显示为*号——像ATM输入密码一样?
不能在输入时显示字符,要输入一个字符,显示一个*。不必调试过。我用\b不行,\b只能删除printf打出的字符,而不能删除键盘输入的字符。...
不能在输入时显示字符,要输入一个字符,显示一个*。不必调试过。
我用\b不行,\b只能删除printf打出的字符,而不能删除键盘输入的字符。 展开
我用\b不行,\b只能删除printf打出的字符,而不能删除键盘输入的字符。 展开
5个回答
展开全部
在C语言中使用getch()函数可以在输入字符时,不显示所输入的字符;这时,再另外输出一个"*"号,就可以像在ATM机上输入密码一样了。
程序如下:
#include<stdio.h>
#include<conio.h>
main()
{
char str[20]={'\0'};
int i=0;
char ch;
ch=getch();
while(ch!='\r')
{
str[i++]=ch;
putchar('*');
ch=getch();
}
getch();
}
程序如下:
#include<stdio.h>
#include<conio.h>
main()
{
char str[20]={'\0'};
int i=0;
char ch;
ch=getch();
while(ch!='\r')
{
str[i++]=ch;
putchar('*');
ch=getch();
}
getch();
}
展开全部
http://zhidao.baidu.com/link?url=OY-g1Wof4J1REMwt8HS5A23FJq97vmwFlY2L7_23C9cnCYCtU153_LM3P2VMnh1VZEGlgsqovKem8qlblkmXFnxAy1jwK1wBpAsu92NIFi_
见此问题的回答 需要调用 getch()函数 ,然后再输出一个'*' (要添加库文件)
见此问题的回答 需要调用 getch()函数 ,然后再输出一个'*' (要添加库文件)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2016-11-13
展开全部
WINDOWS操作系统:
//---------------------------------------------------------------------------
#include <stdio.h>
#include <conio.h>
int main(void)
{
char c;
while ((c=getch())!='q')
putchar('*');
return 0;
}
//---------------------------------------------------------------------------
LINUX操作系统:
//---------------------------------------------------------------------------
#include <curses.h>
int main(void)
{
initscr();
cbreak();
noecho();
while (getch()!='q') addch('*');
echo();
nocbreak;
endwin();
return 0;
}
/*编译时要加上 -lcurses 参数*/
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <stdio.h>
#include <conio.h>
int main(void)
{
char c;
while ((c=getch())!='q')
putchar('*');
return 0;
}
//---------------------------------------------------------------------------
LINUX操作系统:
//---------------------------------------------------------------------------
#include <curses.h>
int main(void)
{
initscr();
cbreak();
noecho();
while (getch()!='q') addch('*');
echo();
nocbreak;
endwin();
return 0;
}
/*编译时要加上 -lcurses 参数*/
//---------------------------------------------------------------------------
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char enter[8],*temp,ch[8]={p,r,o,w,o,l,f};
temp=ch;
printf("Enter the password:");
for(i=0;i<=6;i++)
{
enter[i]=getch();
printf("*");
}
if(strcmp(temp,enter)!=0)
exit(1);
temp=ch;
printf("Enter the password:");
for(i=0;i<=6;i++)
{
enter[i]=getch();
printf("*");
}
if(strcmp(temp,enter)!=0)
exit(1);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char enter[8];
printf("Enter the password:");
for(i=0;i<=7;i++)
{
enter[i]=getch();
printf("*");
}
printf("Enter the password:");
for(i=0;i<=7;i++)
{
enter[i]=getch();
printf("*");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询