bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

c語言子函數(shù)加密,c語言密文加密

c語言加密解密算法

這里使用的是按位加密,按ASCII碼進(jìn)行加密的算法自己寫個(gè),很容易的。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了城西免費(fèi)建站歡迎大家使用!

#includestdio.h

#includestdlib.h

#includeconio.h

#includestring.h

void

dofile(char

*in_fname,char

*pwd,char

*out_fname);/*對(duì)文件進(jìn)行加密的具體函數(shù)*/

void

usage(char

*name);

void

main(int

argc,char

*argv[])/*定義main()函數(shù)的命令行參數(shù)*/

{

char

in_fname[30];/*用戶輸入的要加密的文件名*/

char

out_fname[30];

char

pwd[10];/*用來保存密碼*/

if(argc!=4)

{/*容錯(cuò)處理*/

usage(argv[0]);

printf("\nIn-fname:\n");

gets(in_fname);/*得到要加密的文件名*/

while(*in_fname==NULL)

{

printf("\nIn-fname:\n");

gets(in_fname);

}

printf("Password

6-8:\n");

gets(pwd);/*得到密碼*/

while(*pwd==NULL

||

strlen(pwd)8

||

strlen(pwd)6)

{

printf("Password

6-8:\n");

gets(pwd);

}

printf("Out-file:\n");

gets(out_fname);/*得到加密后你要的文件名*/

while(*in_fname==NULL)

{

printf("Out-file:\n");

gets(out_fname);

}

while(!strcmp(in_fname,out_fname))

{

printf("文件名不能和源文件相同\n");

printf("Out-file:\n");

gets(out_fname);

}

dofile(in_fname,pwd,out_fname);

printf("加密成功,解密請(qǐng)?jiān)俅芜\(yùn)行程序\n");

}

else

{/*如果命令行參數(shù)正確,便直接運(yùn)行程序*/

strcpy(in_fname,argv[1]);

strcpy(pwd,argv[2]);

strcpy(out_fname,argv[3]);

while(*pwd==NULL

||

strlen(pwd)8

||

strlen(pwd)6)

{

printf("Password

faied!\n");

printf("Password

6-8:\n");

gets(pwd);

}

while(!strcmp(in_fname,out_fname))

{

printf("文件名不能和源文件相同\n");

printf("Out-file:\n");

gets(out_fname);

while(*in_fname==NULL)

{

printf("Out-file:\n");

gets(out_fname);

}

}

dofile(in_fname,pwd,out_fname);

printf("加密成功,解密請(qǐng)?jiān)俅芜\(yùn)行程序\n");

}

}

/*加密子函數(shù)開始*/

void

dofile(char

*in_fname,char

*pwd,char

*out_file)

{

FILE

*fp1,*fp2;

register

char

ch;

int

j=0;

int

j0=strlen(pwd);

fp1=fopen(in_fname,"rb");

if(fp1==NULL)

{

printf("cannot

open

in-file.\n");

exit(1);/*如果不能打開要加密的文件,便退出程序*/

}

fp2=fopen(out_file,"wb");

if(fp2==NULL)

{

printf("cannot

open

or

create

out-file.\n");

exit(1);/*如果不能建立加密后的文件,便退出*/

}

/*加密算法開始*/

while(j0=0)

{

ch=fgetc(fp1);

while(!feof(fp1))

{

fputc(ch^pwd[j=j0?j=0:j++],fp2);/*異或后寫入fp2文件*/

ch=fgetc(fp1);

}

j0--;

}

fclose(fp1);/*關(guān)閉源文件*/

fclose(fp2);/*關(guān)閉目標(biāo)文件*/

}

void

usage(char

*name)

{

printf("\t=======================File

encryption======================\n");

printf("\tusage:

%s

In-fname

password

out_fname\n",name);

printf("\tExample:

%s

file1.txt

12345678

file2.txt\n",name);

}

C語言字符串按要求加密 求教

void encryp(char *plain,char *cipher)這個(gè)函數(shù)你寫復(fù)雜了,如下就可以了——

void encryp(char *plain,char *cipher){

int i;

for(i=0;plain[i];i++)

cipher[i]=plain[i]-24;

cipher[i]='\0';

}

這樣加密就完結(jié)了。

C語言設(shè)計(jì)一個(gè)簡(jiǎn)單的加密解密程序

C語言設(shè)計(jì)一個(gè)簡(jiǎn)單的加密解密程序如下:

加密程序代碼:

#includestdio.h

main()

{

char

c,filename[20];

FILE

*fp1,*fp2;

printf("請(qǐng)輸入待加密的文件名:\n");

scanf("%s",filename);

fp1=fopen(filename,"r");

fp2=fopen("miwen.txt","w");

do

{

c=fgetc(fp1);

if(c=32c=126)

{

c=c-32;

c=126-c;

}

if(c!=-1)

fprintf(fp2,"%c",c);

}

while(c!=-1);

}

解密程序代碼:

#includestdio.h

#includestring.h

main()

{

char

c,filename[20];

char

yanzhengma[20];

FILE

*fp1,*fp2;

printf("請(qǐng)輸入待解密文件名:\n");

scanf("%s",filename);

printf("請(qǐng)輸入驗(yàn)證碼:\n");

scanf("%s",yanzhengma);

if(strcmp(yanzhengma,"shan")==0)

{

fp1=fopen(filename,"r");

fp2=fopen("yuanwen.txt","w");

do

{

c=fgetc(fp1);

if(c=32c=126)

{

c=126-c;

c=32+c;

}

if(c!=-1)

fprintf(fp2,"%c",c);

}

while(c!=-1);

}

else

{

printf("驗(yàn)證碼錯(cuò)誤!請(qǐng)重新輸入:\n");

scanf("%s",filename);

}

}

用C語言設(shè)計(jì)程序進(jìn)行文件的加密

這里采用加密函數(shù)是:

如果是數(shù)組,則不進(jìn)行加密;

如果是字符,首先將a變成b,b變c,....依次類推,

然后再與加密字符異或

方法/步驟

首先打開VC++6.0

選擇文件,新建

選擇C++ source file 新建一個(gè)空白文檔

聲明頭文件

#includestdio.h

#includestdlib.h

#includestring.h

首先寫個(gè)加密函數(shù),算法就是簡(jiǎn)介里說的

void EncryptFile(FILE *sfp,FILE *dfp,char pwd)

{

char ch;

if(sfp==0||dfp==0)

{

printf("ERROR!\n");

return;

}

while((ch=fgetc(sfp))!=EOF)

{

if((ch='a')(ch='z'))

{

ch=(ch-'a'+1)%26+'a';

ch=ch^pwd;

}

if((ch='A')(ch='Z'))

{

ch=(ch-'A'+1)%26+'A';

ch=ch^pwd;

}

fputc(ch,dfp);

}

}

寫解密子函數(shù):與加密的過程相反

void DecryptFile(FILE *sfp,FILE *dfp,char pwd)

{

char ch;

while((ch=fgetc(sfp))!=EOF)

{

if((ch='a')(ch='z'))

{

ch=ch^pwd;

ch=(ch-'a'+25)%26+'a';

}

if((ch='A')(ch='Z'))

{

ch=ch^pwd;

ch=(ch-'A'+25)%26+'A';

}

fputc(ch,dfp);

}

}

輸出函數(shù),輸出文件內(nèi)容

void OutputFile(FILE *fp)

{

char ch;

while((ch=fgetc(fp))!=EOF)

putchar(ch);

}

主函數(shù),主要調(diào)用這幾個(gè)函數(shù)

int main()

{

/*用戶輸入的要加密的文件名*/

char sfilename[20];

/*用戶輸入加密后保存的文件名*/

char dfilename[20];

/*用來保存密碼字符*/

char pwd;

FILE *sfp,*dfp;

printf("\nPlease input filename to be encrypted:\n");

/*得到要加密的文件名*/

gets(sfilename);

/*得到加密后你要的文件名*/

printf("input filename to save the encrypted file:\n");

gets(dfilename);

/*得到加密字符*/

printf("Please input your Password:\n");

//scanf("%c",pwd);

pwd=getch();

/*屏幕以*來表示輸入的加密字符*/

printf("*\n");

/*以只讀方式打開要加密的文件*/

if((sfp=fopen(sfilename,"r"))==0)

{

printf("Can't open the file :%s\n",sfilename);

exit(0);

}

/*輸出要加密的文件*/

printf("\nThe the text of file to be encrypted is:\n");

OutputFile(sfp);

/*建立加密后的文件*/

if((dfp=fopen(dfilename,"w+"))==0)

{

printf("Can't open or create the file :%s\n",dfilename);

//exit(0);

}

/*文件加密*/

fseek(sfp,0L,SEEK_SET);

EncryptFile(sfp,dfp,pwd);

printf("\n\nEncrypted the file successfully!\n");

/*輸出加密后的文件*/

printf("\nAfter encrypting the text of file is:\n");

fseek(dfp,0L,SEEK_SET);

OutputFile(dfp);

fclose(sfp);

fclose(dfp);

getch();

return 0;

}

c語言 數(shù)據(jù)加密

#include stdio.h

void main()

{

int a[5]; /* 存儲(chǔ)各位上的數(shù)字 */

int num, temp, encripy; /* num是要輸入的數(shù),temp是交換時(shí)用來存儲(chǔ)臨時(shí)值,encripy是加密后的數(shù)據(jù) */

int i;

do

{

printf("Please input the number:");

scanf("%d",num);

if(!(num/10000 !=0 num/100000==0))

printf("Data error!\n");

}while(!(num/10000 !=0 num/100000==0));

a[0] = num/10000%10; /* 求各位上的數(shù)字 */

a[1] = num/1000%10;

a[2] = num/100%10; /* 百位上的數(shù)字 */

a[3] = num/10%10; /* 十位上的數(shù)字 */

a[4] = num%10; /* 個(gè)位上的數(shù)字 */

for(i = 0; i 5; ++i) /* 開始加密 */

a[i] = (a[i] + 8)%10;

temp = a[0]; /* 交換位置開始 */

a[0] = a[3];

a[3] = temp;

temp = a[1];

a[1] = a[2];

a[2] = temp; /* 交換位置結(jié)束同時(shí)加密結(jié)束 */

encripy = a[0]*10000 + a[1]*1000 + a[2]*100 + a[3]*10 + a[4]; /* 加密后的數(shù)據(jù) */

printf("\nThe scourse number: %d\n", num); /* 輸出原數(shù)據(jù) */

printf("\nEncripy the number: %d\n\n", encripy); /* 輸出加密后的數(shù)據(jù) */

}

在VC6.0成功運(yùn)行,希望對(duì)你有幫助!

編寫函數(shù)完成字符串的加密與解密(c語言)?

C語言代碼和運(yùn)行結(jié)果如下:

輸出符合示例,加解密均正確,望采納~

附源碼鏈接:字符串加解密

當(dāng)前標(biāo)題:c語言子函數(shù)加密,c語言密文加密
文章來源:http://vcdvsql.cn/article38/hedhsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站ChatGPT網(wǎng)站營(yíng)銷服務(wù)器托管建站公司關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)