c语言关于密码设置的问题。。只要能把所输入的字符在屏幕上显示*,而且同时把密码赋值给一个特定的值
c语言关于密码设置的问题。。只要能把所输入的字符在屏幕上显示*,而且同时把密码赋值给一个特定的值请问这个源代码是什么???
#include <stdio.h> #include <stdlib.h> #include <conio.h> #define SIZE 20 //定义最大密码长度 char input(); int main() { char x[SIZE]; int times = 0; int p; printf("请输入密码:\n"); while(1) { p = input(); if(p == '\0' && times !=0) { x[times] == p; break; } if(p == '\0' && times ==0) { printf("密码不能为空!\n"); printf("请输入密码:\n"); } if(p == '\b' && times != 0 ) { times--; printf("\b \b"); } if(p == '\b' && times == 0) { putchar('\a'); } if(p != '\b' && p != '\r' && p != '\0') { x[times] = p; times++; } } x[times] = '\0'; printf("\n输入的密码是:%s\n", x); return 0; } char input() { char x; x=getch(); switch(x) { case ' ' : case '\r': return '\0'; break; case '\b': return '\b'; break; default : putch('*'); return x; break; } }