一个两位纯数字密码破解程序怎么编,用C语言

学校的作业,求高手解救

1、数据范围小的密码可以使用穷举法。这里从00到99,当作字符来处理,需要两重循环。

2、例程:

char a,b,c='1',d='2'; //这里变量c,d表示密码的第一位和第二位。
char key[2];
for(a='0';a<='9';a++){
        for(b='0';b<='9';b++){
                key[0]=a;
                key[1]=b;        //这就是一个密码
                if(key[0]==c && key[1]==d) printf("密码是:%s",key);//找到密码并输出
        }
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-25
就是穷举咯
从00到99,应该是当作字符来处理把
套个两重循环
char a,b;
char key[2];
for(a='0';a<='9';a++){
for(b='0';b<='9';b++){

key[0]=a;
key[1]=b; //这就是一个密码

}
}本回答被提问者和网友采纳
第2个回答  2012-07-06
从00到99不断的进行尝试啊!
望采纳!追问

。。。。。。。。。。。。。。。,这个作业就是要写程序!!!!

追答

题目完整的给下啊
给你个好的吧!

#include
#include

int main()
{
char password[3] = "23"; //假设这是密码
char tryPass[3];
char a = '0';
char b = '0';
int i,j;

for (i=0; i<9; i++)
{
for (j=0; j<9; j++)
{
tryPass[0] = a;
tryPass[1] = b;
tryPass[2] = '\0';
printf("%s\n",tryPass);

b = '0';
if (strcmp(password,tryPass)==0)
{
printf("密码破解成功!\n");
printf("密码为%s\n", tryPass);
return 0;
}
b += j;
}
a++;
}
return 0;
}

第3个回答  2012-07-06
用穷举法,给你个思路:
for (i = 10; i <= 99; i++)
{
//在这里进行比较

}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网