C语言密码程序 错误3次后退出

我这个程序有问题,密码即使错了J的值一直都是1,不会加一,就会一直循环,怎么改?#include<stdio.h>intmain(){inti,j;charpasswor... 我这个程序有问题,密码即使错了J的值一直都是1,不会加一,就会一直循环,怎么改?
#include <stdio.h>
int main()
{
int i,j;
char password[4];
for(j=1;j<=4;j++)
{
printf("欢迎使用本系统,请输入4位密码:\n");

printf("%d",j);

if(j==3)
break;
else if(j<3)
{
for(i=0;i<=3;i++)
{

password[i]=getch();
printf("*");
}
password[i]='\0';
if(strcmp(password,"deng")==0)
{
printf("\n\n密码正确\n");
break;
}
else
{

printf("\n\n密码错误\n");
}
}

}
printf("错误3次\n");
exit(0);
}
展开
 我来答
金鱼8884
推荐于2017-09-15 · 知道合伙人数码行家
金鱼8884
知道合伙人数码行家
采纳数:124 获赞数:14950
学生

向TA提问 私信TA
展开全部
#include"stdio.h"
#include"string.h"
void main()
{
 int i;
 char *pwd = "123456";
 char pwd2[7];
 for (i=0; i<3; i++)
 {
 printf("请输入密码:");
 scanf("%s", pwd2);
 if (strcmp(pwd, pwd2)==0)
 {
 break;
 }
 else
 {
 printf("您已错误%d次(共3次)", i+1);
 }
 }

 if (i<3) printf("登录成功!\n");
 else printf("密码错误3次,系统锁定!\n");
}
夏天的青云
推荐于2017-09-18 · TA获得超过293个赞
知道小有建树答主
回答量:200
采纳率:0%
帮助的人:274万
展开全部
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int i,j;
char password[5];
for(j=1;j<=4;)
{
if(j==4)
break;
else if(j<4)
{
printf("欢迎使用本系统,请输入4位密码:\n");
printf("%d",j);
for(i=0;i<=3;i++)
{
password[i]=getch();
printf("*");
}
}
password[i]='\0';
if(strcmp(password,"deng")==0)
{
printf("\n\n密码正确\n");
exit(0);
}
else
{
printf("\n\n密码错误\n");
j++;
}
}
printf("错误3次\n");
getch();
return 0;
}//楼主的逻辑有点问题,已经帮修正了下代码...自己参考一下代码吧,就不再注释了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式