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

如何用C语言编写密码程序,第1张

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")

  

}

VC6 代码

#include<windows.h>

#include<stdio.h>

#define SIZE 100

BOOL excude(char *szOutPutBuf,char *szInPutBuf)

{

SECURITY_ATTRIBUTES sa

HANDLE hRead,hWrite

sa.nLength = sizeof(SECURITY_ATTRIBUTES)

sa.lpSecurityDescriptor = NULL

sa.bInheritHandle = TRUE//输出重定向

if (!CreatePipe(&hRead,&hWrite,&sa,0))

{

printf("创建匿名管拦卖道失败")

return FALSE

}

STARTUPINFO si

PROCESS_INFORMATION pi

ZeroMemory(&si,sizeof(STARTUPINFO))

si.cb = sizeof(STARTUPINFO)

si.hStdInput=hRead

si.hStdError = GetStdHandle(STD_ERROR_HANDLE) //把创建进程的标准错误输出重定向到管道输入

si.hStdOutput = hWrite //把创建进程的标准输出重定向到管道输入

si.wShowWindow = SW_HIDE

si.dwFlags =STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW

if (!CreateProcess(NULL, "..\\..\\Debug\\code.exe",NULL,NULL,TRUE,0,NULL,NULL,&si,&pi)) //路径自己设定

{

CloseHandle(hWrite)

CloseHandle(hRead)

printf("创建子进程失败")

return FALSE

}

else

{

CloseHandle(pi.hProcess)

CloseHandle(pi.hThread)

}

DWORD bytesRead

DWORD bytesWrite

if(!WriteFile(hWrite,szInPutBuf,strlen(szInPutBuf),&bytesWrite,NULL))

printf("写入数据失败\n")

Sleep(1000)//等待子进程往管道写入数据,不可以省略

if (!ReadFile(hRead,szOutPutBuf,SIZE,&bytesRead,NULL))

printf("读数据失判御败\n")

CloseHandle(hRead)

return TRUE

}

int main()

{

char pf[]="find the code\r\n"

char output[SIZE],input[SIZE]="123\r\n"//对密码的初始化程序自己设计

memset(output,0,SIZE)

excude(output,input)

if(!strcmp(output,pf))

printf("cracked!\n"掘衡岩)

return 0

}

另外,软件破解不需要这么费力,用OD这些调试一下原来的那个程序分分钟就破解了!!

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#define pi 3.1415926

float area(float s)

void main()

{

char srmima[16],mima[16]="sunshibin1020"

int i=0,j

float r,s

while(1)

{

for(j=0j<30j++)

printf("-")

printf("做谨\n")

printf("请输入密码:")

gets(srmima)

for(j=0j<30j++)

printf("-")

printf("\n")

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

{

printf("恭喜你悄困,密码正确!\n")

break

}

i++

if(i>2)

{

printf("很遗憾,密码输入错误!\n")

exit(0)

}

}

area(r)

printf("圆面积为:%f",s)

getchar()

}

float area(float r)

{

float s

while(1)

{

printf("\n请输入半径: r:")

scanf("%f",&r)

if (r<0)

break

s=pi*r*r

printf("s=%.2f\启胡念n",s)

}

exit(0)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8240792.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存