庐陵第一兰陵 2021-06-03 09:05 采纳率: 66.7%
浏览 62
已采纳

求C语言代码,跪求大佬帮忙,很急

11:用户设置密码
做一个密码验证程序,密码验证只有三次机会。
要求有登录界面,用户输入密码时应以*代替输出。
用户登录成功后可以修改密码。
可以有多个用户登录。初次登录的密码由管理员设置。
管理员可以添加或删除用户。

  • 写回答

2条回答 默认 最新

  • 关注
    #include <stdio.h>
    #include <conio.h>     //注意要有这个
    #include <string.h>    //注意要有这个
    
    int Login()
    {
        char password[6];   //假设密码最多8位
        int  xSel;
        unsigned char key=0;
        printf("\n请输入密码:");
        for(int i=0;i<3;i++)
        {
            memset(password,0,6);
            xSel=-1;
            while(1)
            {
                key=getch();
                if(key=='\r') break;
                if(key=='\b')
                {
                    if(xSel>=0)
                    {
                        password[xSel]=0;
                        xSel--;
                        printf("\b \b");
                    }
                    continue;
                }
                if(xSel<5)
                {
                    xSel++;
                    password[xSel]=key;
                    printf("*");
                }
            }
            if(memcmp(password,"123456",6)==0)
                return 1;
            else
            {
                if(i<2)
                    printf("\n不对,再来:");
                else
                    printf("\n三次都不对,退出");
            }
    
        }
        return 0;
    }
    int main(void)
    {
        int a;
        a=Login();
        if(a==1)
        {
            printf("\n密码正确!");
        }
        else
        {
            printf("\n输入错误!");
        }
        printf("\n");
        return 0;
    }
    
    
    

    框架给你写好了,你再改下就行了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 请问各位,如何在Jetson nano主控板的Ubuntu系统中安装PyQt5
  • ¥15 MAC安装佳能LBP2900驱动的网盘提取码
  • ¥400 微信停车小程序谁懂的来
  • ¥15 ATAC测序到底用什么peak文件做Diffbind差异分析
  • ¥15 安装ubantu过程中第一个vfat 文件挂载失败
  • ¥20 GZ::CTF如何兼容一些靶机?
  • ¥15 etcd集群部署问题
  • ¥20 谁可以帮我一下问一下各位
  • ¥15 为何重叠加权后love图的SMD与svyCreateTableOne函数绘制基线表的不一致
  • ¥150 求 《小魔指》街机游戏机整合模拟软件