m0_62267751 2021-12-16 16:21 采纳率: 85.7%
浏览 95
已结题

C语言 判断密码是否正确并返回 可以判断是否正确,但是密码错误后就没办法判断


#include <stdio.h>
#include <math.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
#include<conio.h>
int main(){
    char Password[100],str[100]="admin";
    strcpy(Password,str);
    printf("%s\n",Password);
    char str43[100];
    int CSS=0;
    while(str43[CSS]=getch())
    {
        if(str43[CSS]==13){
            break;
        }
        if(str43[CSS]!='\b'){
            printf("*");
            CSS++;
        }
        else{
                printf("\b \b");
                CSS--;
            }
    }
    str43[CSS]='\0';
    printf("\n");
    printf("%s\n",str43);
    GATE:
    if(strcmp(str43,Password)==0)
    {
        printf("Yes\n");
    }
    else
    {
        printf("Invalid password.\n");
        printf("Enter the password:");
        while(str43[CSS]=getch())
        {
            if(str43[CSS]==13){
                break;
            }
            if(str43[CSS]!='\b'){
                printf("*");
                CSS++;
            }
            else{
                printf("\b \b");
                CSS--;
            }
        }
        str43[CSS]='\0';
        printf("\n");
        goto GATE;
    }
    return 0;
}

img

  • 写回答

1条回答 默认 最新

  • 书山客 2021-12-17 09:49
    关注
    
    #include <stdio.h>
    #include <math.h>
    #include <string.h>
    #include <ctype.h>
    #include <stdlib.h>
    #include<conio.h>
    int main() {
        char Password[100] = {0}, str[100] = "admin";
        strcpy(Password, str);
        printf("%s\n", Password);
        char str43[100];
        int CSS = 0;
        while (str43[CSS] = getch())
        {
            if (str43[CSS] == 13) {
                break;
            }
            if (str43[CSS] != '\b') {
                printf("*");
                CSS++;
            }
            else {
                printf("\b \b");
                CSS--;
            }
        }
        str43[CSS] = '\0';
        printf("\n");
        printf("%s\n", str43);
    GATE:
        if (strcmp(str43, Password) == 0)
        {
            printf("Yes\n");
        }
        else
        {
            CSS = 0;
            str43[0]='\0';
            printf("Invalid password.\n");
            printf("Enter the password:");
            while (str43[CSS] = getch())
            {
                if (str43[CSS] == 13) {
                    break;
                }
                if (str43[CSS] != '\b') {
                    printf("*");
                    CSS++;
                }
                else {
                    printf("\b \b");
                    CSS--;
                }
            }
            str43[CSS] = '\0';
            printf("\n");
            goto GATE;
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月25日
  • 已采纳回答 12月17日
  • 创建了问题 12月16日

悬赏问题

  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行