c语言密码软件,c语言密码软件有哪些

本文目录一览:

如何用C语言编写密码程序

1、用一个字符数组来存密码

再用一个字符数组接收你的输入,然后用strcmp

来比较,如果返回0则密码是正确的

2、例程:

#include “stdio.h”

#include “string.h”

int main()

{

       char mima[100]=”YuanShi888″;

       char input[100]={0};

       printf(“请输入密码:”);

        gets(input);

       if(strcmp(mima,input)==0)

            printf(“恭喜你,密码正确!\n”);

       else

            printf(“对不起,密码输入错误!\n”);

  

}

如何用C语言编一个密码生成器

C语言实现密码生成器,参考代码如下:

#include 

#include 

#include 

//const char lower_chars[] = “abcdefghijklmnopqrstuvwxyz”;

//const char upper_chars[] = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;

//const char number_chars[] = “0123456789”; 

const char lower_chars[] = “abcdefghijkmnpqrstuvwxyz”; // no l or o

const char upper_chars[] = “ABCDEFGHJKLMNPQRSTUVWXYZ”; // no I or O

const char number_chars[] = “23456789”; // no 1 or 0

const char special_chars[] = “!@#$%^*()-=_+[]{};:’\”,.?/”;

const int _ks_pass_len = 17;

void mkpass(char pass[_ks_pass_len+1])

{

int i = 0, j = 0, k = 0,n = 0;

n = _ks_pass_len/4;

for (; i  n; i++)

{

pass[i] = lower_chars[rand()%(strlen(lower_chars))];

pass[i+n] = upper_chars[rand()%(strlen(upper_chars))];

pass[i+2*n] = number_chars[rand()%(strlen(number_chars))];

pass[i+3*n] = special_chars[rand()%(strlen(special_chars))];

}

j = _ks_pass_len – 4*n;

for (i = 0; ij; i#43;#43;) {

pass[i+4*n] = special_chars[rand()%(strlen(special_chars))];

}

//字符乱序

for (i = 0; i  32; i++)

j = rand()%(_ks_pass_len);

k = pass[j];

pass[j] = pass[i%_ks_pass_len];

pass[i%_ks_pass_len] = k;

}

pass[_ks_pass_len] = ‘\0’;

}

int _tmain(int argc, _TCHAR* argv[])

{

srand(time(0));

char szPass[_ks_pass_len+1];

for (int i=0; i16; i++)

{

mkpass(szPass);

printf(“%s\n”,szPass);

}

return 0;

}j; i#43;#43;)

如何使用c语言编写一个密码程序

密码保存在文件中,从文件中读取密码,但是没做容错和异常处理,仅供参考

#include stdio.h

#include string.h

#define PSDLEN 6

void inputPsd(char *str) /*处理输入*/

{

int i;

for(i = 0; i PSDLEN; i++)

{

while(1)

{

str[i] = getch();

if(str[i] == ‘\b’) /*处理退格键*/

{

i–;

if(i 0)

{

i = 0;

}

else

{

printf(“\b \b”);

}

continue;

}

else if(str[i] == ‘\r’) /*处理回车键*/

{

continue;

}

else

{

printf(“*”);

break;

}

}

}

str[i] = ‘\0’;

printf(“\n”);

}

int checkFirst() /*检测是否是第一次使用*/

{

FILE *fp;

if((fp = fopen(“psd.dat”, “rb”)) == NULL)

{

return 1;

}

fclose(fp);

return 0;

}

void firstUse() /*第一次使用 需要输入密码*/

{

FILE *fp;

int i;

char passwd[PSDLEN + 1];

char checkPsd[PSDLEN + 1];

if((fp = fopen(“psd.dat”, “wb”)) == NULL)

{

printf(“Creat password error!\n”);

exit(1);

}

while(1)

{

printf(“Please input password:”);

inputPsd(passwd);

printf(“\nPlease input password again:”);

inputPsd(checkPsd);

if(!strcmp(passwd, checkPsd))

{

break;

}

printf(“\ncheck password error! \n”);

}

fwrite(passwd, sizeof(char), PSDLEN, fp);

fclose(fp);

}

void login() /*核对密码,并登录*/

{

FILE *fp;

int i, num = 3;

char passwd[PSDLEN + 1];

char checkPsd[PSDLEN + 1];

if((fp = fopen(“psd.dat”, “rb”)) == NULL)

{

puts(“Open psd.dat error”);

exit(1);

}

fread(passwd, sizeof(char), PSDLEN, fp);

fclose(fp);

passwd[PSDLEN] = ‘\0’;

printf(“Please input password to login”);

while(num)

{

printf(“you have %d chances to cry:\n”, num);

inputPsd(checkPsd);

if(!strcmp(passwd, checkPsd))

{

break;

}

puts(“\npassword error,Please input again”);

num–;

}

if(!num)

{

puts(“Press any key to exit…”);

getch();

exit(0);

}

else

{

puts(“\n——–\nWelcome!\n——–\n”);

}

}

void main()

{

if(checkFirst())

{

firstUse();

}

else

login();

getch();

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/199407.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-05 10:21
下一篇 2024-12-05 10:21

相关推荐

  • Python脚本控制其他软件

    Python作为一种简单易学、功能强大的脚本语言,具有广泛的应用领域,在自动化测试、Web开发、数据挖掘等领域都得到了广泛的应用。其中,Python脚本控制其他软件也是Python…

    编程 2025-04-29
  • Python 常用数据库有哪些?

    在Python编程中,数据库是不可或缺的一部分。随着互联网应用的不断扩大,处理海量数据已成为一种趋势。Python有许多成熟的数据库管理系统,接下来我们将从多个方面介绍Python…

    编程 2025-04-29
  • AES加密解密算法的C语言实现

    AES(Advanced Encryption Standard)是一种对称加密算法,可用于对数据进行加密和解密。在本篇文章中,我们将介绍C语言中如何实现AES算法,并对实现过程进…

    编程 2025-04-29
  • 量化交易软件哪个好?

    量化交易软件是为量化交易而设计的工具,能够用程序化方法对市场数据进行分析和交易决策。那么,哪个量化交易软件最好呢?下面从几个方面进行详细阐述。 一、交易功能 交易功能是量化交易软件…

    编程 2025-04-29
  • Python通配符有哪些

    Python通配符是一种表示字符串中模糊匹配的有效工具,用于匹配与具有特定模式匹配的字符串。Python中主要的通配符有:*,?,[]和{}。 一、星号通配符 * 在Python中…

    编程 2025-04-29
  • 学习Python对学习C语言有帮助吗?

    Python和C语言是两种非常受欢迎的编程语言,在程序开发中都扮演着非常重要的角色。那么,学习Python对学习C语言有帮助吗?答案是肯定的。在本文中,我们将从多个角度探讨Pyth…

    编程 2025-04-29
  • Python被称为胶水语言

    Python作为一种跨平台的解释性高级语言,最大的特点是被称为”胶水语言”。 一、简单易学 Python的语法简单易学,更加人性化,这使得它成为了初学者的入…

    编程 2025-04-29
  • OpenJudge答案1.6的C语言实现

    本文将从多个方面详细阐述OpenJudge答案1.6在C语言中的实现方法,帮助初学者更好地学习和理解。 一、需求概述 OpenJudge答案1.6的要求是,输入两个整数a和b,输出…

    编程 2025-04-29
  • Python按位运算符和C语言

    本文将从多个方面详细阐述Python按位运算符和C语言的相关内容,并给出相应的代码示例。 一、概述 Python是一种动态的、面向对象的编程语言,其按位运算符是用于按位操作的运算符…

    编程 2025-04-29
  • 注册表取证工具有哪些

    注册表取证是数字取证的重要分支,主要是获取计算机系统中的注册表信息,进而分析痕迹,获取重要证据。本文将以注册表取证工具为中心,从多个方面进行详细阐述。 一、注册表取证工具概述 注册…

    编程 2025-04-29

发表回复

登录后才能评论