Readme:按照相应规则生成随机密码, 可作为定期修改密码的生成器, 避免了长期使用相同密码造成的信息泄露问题, 制作了一个较为初级的入门款软件, 并贴出源码方便大家加入或使用自己的生成规则. 本人能力有限, 若是有技术上的不足也请大牛们指正, 谢谢!

名称:randcodeR.v.0.3
语言:C
作者:ZhuXiong
版本号:v.0.3
时间:2018.10.521:04
更新说明:1. 加入新规则: 专家(expert_prototype)(英文混写+数字+符号)
下载地址:https://github.com/DolorHunter/randcodeR

==GitHub项目将会持续更新 敬请期待==

感谢支持!

#目前最新的稳定版本v.0.3 源码
#v.0.3.1正在开发中...
//v.0.3	规则更多!  
//包括0.纯数字		1.数字+英文小写		2.数字+英文混合		3.expert_prototype		在内的四种规则

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

void rand_num_type(int bit);
void rand_en_num_type(int bit);
void rand_en_num_pro_type(int bit);
void rand_expert(int bit);

int main(void)
{
    int bit,chose;
    int i,j;
    printf("===随机密码生成器===\n");
    printf("选择密码生成规则:\n0.纯数字\n1.数字+英文小写\n2.数字+英文混合\n3.expert_prototype\n请输入选择序号:");
    scanf("%d",&chose);
    srand((int)time(0));
    if(chose<0||chose>3)
    {
        printf("使用的规则错误!");
        return -1;
    }
    else
    {
        printf("请输入密码位数:");
        scanf("%d",&bit);
        printf("\n");
        for(i=0;i<10;i++)   //每组输出10个密码方便强迫症选择
        {
            if(chose==0)
            {
                rand_num_type(bit);
            }
            else
                if(chose==1)
                {
                    rand_en_num_type(bit);
                }
                else
                    if(chose==2)
                    {
                        rand_en_num_pro_type(bit);
                    }
                    else
                    {
                        rand_expert(bit);
                    }

            printf("\n");
        }
    }
return 0;
}

void rand_num_type(int bit)
{
    int j;
    for(j=0;j<bit;j++)
    {
        printf("%d",rand()%10);
    }
}


void rand_en_num_type(int bit)
{
    int j;
    for(j=0;j<bit;j++)
    {
        if(rand()%2==0)
        {
            printf("%d",rand()%10);
        }
        else
        {
            printf("%c",rand()%26+65);
        }
    }

}


void rand_en_num_pro_type(int bit)
{
    int j;
    for(j=0;j<bit;j++)
    {
        if(rand()%3==0)
        {
            printf("%d",rand()%10);
        }
        else
            if(rand()%3==1)
            {
            printf("%c",rand()%26+65);
            }
            else
            {
                printf("%c",rand()%26+97);
            }
    }
}


void rand_expert(int bit)
{
    int j;
    for(j=0;j<bit;j++)
    {
        printf("%c",rand()%95+32);
    }
}

10-06 14:33