C语言中2个简单的问题?

来源:百度知道 编辑:UC知道 时间:2024/05/17 05:19:26
1.用C语言编程时,想把运行后要输入的那些数字(一般是密码之类的)不直接显示,而是用*显示怎么弄??用什么语句?
2.用判断ASCII码值的比较方法来实现两个字符串或者数字的异同?
比如正确的输入应该是a12345

#include<stdio.h>
main()
{
char b[6]={'a','1','2','3','4','5'};
char a[20];
int i,n;
i=0;
while((a[i]=getch())!=13)
{
i=i+1;
printf("*");
}
for(i=0;i<6;i++)
if(a[i]!=b[i]) break;
if (i==6)
printf("\n密码真确!\n");
else
printf("\n密码输入错误!\n");

}

1、输入时,接收之后输出一个\b(就是退格),将输入的字符删除,再输出一个“*”
2、用循环直接比较.

用一个函数,似乎是击键测试函数拦截键盘输入,获得其扫描码,获得其输入,然后向屏幕输出一个*。这样屏幕中就不会显示你的输入。楼上的看起来还是要显示出来的。