我没办法了,只好求助了!!!

永澄 永澄 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include"windows.h"

char *login()
{
int i = 0, second;
char password, pw[19];
label:printf("请输入密码:");
while( 1 )
{
password = getch();
if( password < '!' || password > '~' )
{
if( password == '\b' || password == '\r' )
{
if( password == '\r' ) break;
else printf("\b \b"), i --;

}
else
{
second = 3;
while( second )
{
system("cls");
printf("错误输入,请重新输入\t");
printf("%d", second -- );
Sleep(1200);
}
system("cls");
goto label;

}
}
else
{
pw[i] = password;
i ++;
printf("*");
}
}
pw[i] = '\0';
return pw;
}

void main()
{
char *password = "infinite";
if( strcmp( password, login() ) == 0 ) printf("密码正确\n\n");
else printf("密码不正确\n\n");
}

郁闷的地方就在 红色字 部分,只要有 second = x; ( x 是一个整数 ),那个 while 循环 每次都会循环 2次

你们可以复制去运行一下看看
...全文
评论 6
收藏 已收藏
分享
返回顶部
永澄
C++ 语言 65,214 成员 250,514 内容