int nMaxLen = 0;
void Exhaustive(int n, char* pChose, char* pData, FILE* fp, int nLen)
{
if (n == nMaxLen)
{
//printf("%s\n", pData);
//写入文本
fputs(pData, fp);
fputs("\r\n", fp);
}
else
{
//把所有位置从a开始填充
int j = 0;
for (int i = 0, j = 0; i <= nLen; i++, j++)
{
pData[n] = pChose[j];//每个位置都会赋值到szChose的字符
Exhaustive(n + 1, pChose, pData, fp, nLen);//下一个位置填充
}
//还原从0继续开始
pData[n] = pChose[j];
}
}
int main()
{
//自己制作穷举数
//ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789 字符用户名 字符密码
//ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz 字母用户名
//ABCDEFGHIGKLMNOPQRSTUVWXYZ0123456789
//abcdefghigklmnopqrstuvwxyz0123456789
//ABCDEF0123456789
//abcdef0123456789
//0123456789