爱好-C语言秘钥产生器
重回C语言学习。从基础看起,突发奇想写一些感兴趣的小程序。
还是先上代码:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<conio.h>//exe文件执行结束不自动关闭窗口
int miyao(); /* 函数声明 */
//int read();
int main(){
int N;
printf("产生秘钥个数:");
scanf("%d",&N);
srand(time(0));
for (int i=0;i<N;i++){
printf(" %d",i+1);
miyao(); //依次取1个序列的第1到第5个随机数
}
getch();//exe文件执行结束不自动关闭窗口
//read();
}
int miyao()
{
FILE *file_path1 = fopen("H:\\秘钥(22位-70随机字符).txt","a");
//"a"打开一个文本文件,以追加模式写入文件。如果文件不存在,则会创建一个新文件。
//在这里,您的程序会在已有的文件内容中追加内容。
char warehouse[]=
{
'0','1','2','3','4','5','6','7','8','9',
'a','b','c','d','e','f','g','h','i','j',
'k','l','m','n','o','p','q','r','s','t',
'u','v','w','x','y','z','A','B','C','D',
'E','F','G','H','I','J','K','L','M','N',
'O','P','Q','R','S','T','U','V','W','X',
'Y','Z','*','&','%','@','!','?','+','-'
};//随机仓库,可以修改想要的随机字符库
char pwd[17];
pwd[16]='\0';//方便作为字符串输出处理
int i=0;
while(i!=16)//16位随机数
{
pwd[i++]=warehouse[rand()%sizeof(warehouse)];
}
printf(" 22位秘钥: Snikai-%s\n",pwd); //6位固定头
fprintf( file_path1, "Snikai%s\n" , pwd); //写入
//fprintf( file_path2, "Snikai%s\n" , pwd);
fclose(file_path1);//关闭流
//fclose(file_path2);//关闭流
}
因为想要生成的秘钥比较复杂,用了70个字母、数字、符号作为随机仓库
效果图: