| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 525 人关注过本帖
标题:密码变为***
只看楼主 加入收藏
machuang555
Rank: 1
等 级:新手上路
帖 子:6
专家分:3
注 册:2009-7-31
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
密码变为***
如何用最好的方法把密码变为***,我在网上看到的代码都写的很长很长的,  有没有最优化的方法,  想大家给我个写法, 谢谢了
搜索更多相关主题的帖子: 密码 
2009-07-31 19:28
printc
Rank: 2
来 自:坎坷之路
等 级:论坛游民
帖 子:162
专家分:84
注 册:2009-6-12
收藏
得分:0 
想要几行的?自己做也得10多行。。。

人生之路,坎坷颇多……
2009-07-31 20:18
a3324052
Rank: 2
等 级:论坛游民
帖 子:2
专家分:20
注 册:2009-7-19
收藏
得分:20 
用getch啊 头文件时#include<conio.h>
定义1个字符数组char szchA[100];
for(int i=0;i<100;i++)
{szchA[i]=getch();
 printf("*");
}
这样输入的话 你按什么都只显示星号啊 不会出现密码的
2009-08-01 22:49
wangyf
Rank: 2
等 级:论坛游民
帖 子:40
专家分:45
注 册:2009-6-27
收藏
得分:0 
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <windows.h>
#include <winnt.h>
int main(void)
{
    int i,m=1,a;
    char l,k[11]="13912735431",x[12],y[9]="453743739",format[10];
    system("COLOR f2");
////////////////////////////////////////////////
    printf("User: ");
    for(i=0;i<=8;i++)
    {
        l=getch();
        if(l>=33&&l<=126)
        {
            x[i]=l;
            format[i]=x[i];
            printf("%c",x[i]);
        }
        else if(l==8)
        {
            i-=2;
            if(i<=-1) i=-1;
            system("cls");
            printf("User: ");
            if(i>=0)
                for(a=0;a<=i;a++) printf("%c",x[a]);
        }
        else --i;
    }
    for(i=0;i<=8;i++)
    {
        if(x[i]!=y[i])
            m=0;
    }
    x[9]='\0';
////////////////////////////////////////////
    printf("\nPassword: ");
    for(i=0;i<=10;i++)
    {
        l=getch();
        if(l>=33&&l<=126)
        {
            x[i]=l;
            printf("*");
        }
        else if(l==8)
        {
            i-=2;
            if(i<=-1) i=-1;
            system("cls");
            format[9]='\0';
            printf("User: %s\nPassword: ",format);
            if(i>=0)
                for(a=0;a<=i;a++) printf("*");
        }
        else --i;
    }
    for(i=0;i<=10;i++)
    {
        if(x[i]!=k[i])
            m=0;
    }
    x[11]='\0';
///////////////////////////////////////////////
    if(m!=0)
        printf("\n\nPass!");
    else
        printf("\n\nWrong!");
    system("Pause>nul");
    return 0;
}  
/********
* ESC=27
* W=119
* S=115
* A=97
* D=100
********/
/*
FOREGROUND_BLUE 蓝色
FOREGROUND_GREEN 绿色
FOREGROUND_RED 红色
FOREGROUND_INTENSITY 加强
BACKGROUND_BLUE 蓝色背景
BACKGROUND_GREEN 绿色背景
BACKGROUND_RED 红色背景
BACKGROUND_INTENSITY 背景色加强
COMMON_LVB_REVERSE_VIDEO 反色
*/
/*33-128*/
 
 
//loop:    MessageBeep(MB_ICONHAND);//警告
//        MessageBeep(MB_OK);//"叮"
//        MessageBeep(MB_ICONEXCLAMATION);//尖声"dear"
//        MessageBeep(MB_ICONASTERISK);//编译完成
//        MessageBeep(-1);//蜂鸣器
//自己编的,compire过了
2009-08-08 19:26
wangyf
Rank: 2
等 级:论坛游民
帖 子:40
专家分:45
注 册:2009-6-27
收藏
得分:0 
按backspace删,另外别上我qq啊~~~,不过是我多心了吧,呵呵~~
2009-08-08 19:28
快速回复:密码变为***
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028450 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved