#include<stdio.h>#defineisletter(c)(((c)>='a'&&(c)<='z')||((c)>='A'&&(c)<='Z'))
voidEnc(constchar*str,char*out,intkey)
{
inti=0;
while(str[i])
{
if(isletter(str[i]))
{
out[i]=str[i]+key;
if(!isletter(out[i]))
out[i]-=26;
}
else
out[i]=str[i];
i++;
}
out[i]=0;
}
voidDenc(constchar*str,char*out,intkey)
{
inti=0;
while(str[i])
{
if(isletter(str[i]))
{
out[i]=str[i]-key;
if(!isletter(out[i]))
out[i]+=26;
}
else
out[i]=str[i];
i++;
}
out[i]=0;
}
intmain()
{
charout[100],out2[100];
Enc("THEQUICKBROWnfoxjumpsoverTHELAZYDOG",out,3);
printf("%s\n",out);
Denc(out,out2,3);
printf("%s\n",out2);
}
不好意思,运行界面怎么不是跟图的一样?
求python中的恺撒密码的加密,解密,以及破解的程序
凯撒密码作为一种最为古老的对称加密体制,在古罗马的时候都已经很流行,他的基本思想是:通过把字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推X将变成A,Y变成B,Z变成C。由此可见,位数就是凯撒密码加密和解密的密钥。
如下代码是以偏移量为13展开计算的。123
源代码如下:
sr1="abcdefghijklmnopqrstuvwxyz"sr2=sr1.upper()
sr=sr1+sr1+sr2+sr2
st="The Zen of Python"sResult=""for j in st: if j==" ":
sResult = sResult +" "
continue
i=sr.find(j) if(i>-1):
sResult=sResult+sr[i+13]print sResult12345678910111213
运行结果为:
Gur Mra bs Clguba
C++代码 加密解密“恺撒密码” 要做界面
要是不要界面,我就做的出;要界面,我也做的出,只是要打太多字。看有没有空啦
我用MFC做的,呵呵。我把这个工程发给你吧。 我好像不小心做错了。
真的看错题目了,我还以为是以前老师教我们做的“凯撒密码”小程序呢。
我再去写。~~~~~~~~~~~~~~~~~~~~~~~~
C++代码 加密解密“恺撒密码” 要做界面
纯手工写,下面的我写的两个加密与解密的函数,LZ只要放到你的button按钮代码的同一文件里就可以了,LZ可以在点击加密的时候先获取textbox1的值,再调用encoder函数,然后把返回值写到textbox2里,解密同理。
我这里MFC跑不起来
#include <iostream>
#include<string>
using namespace std;
string encode="abcdefghijklmnopqrstuvwxyz";//明文
string decode="ACBDFEHGJILKNMPQOSTRUVZYXW";//暗文
//encode与decode一一对应
string decoder(string s)//解密函数
{
for(int i=0;i<s.length();i++)
{
for(int j=0;j<26;j++)
{
if(s[i]==decode[j])
{
s[i]=encode[j];
break;
}
}
}
return s;
}
string encoder(string s)//加密函数
{
for(int i=0;i<s.length();i++)
{
if('s[i]'-'0'<47)s[i]=s[i]+32;
for(int j=0;j<26;j++)
{
if(s[i]==encode[j])
{
s[i]=decode[j];
break;
}
}
}
return s;
}
void main()
{
string s;
cin>>s;
s=encoder(s);
cout<<s<<endl;
s=decoder(s);
cout<<s<<endl;
}
加密解密“恺撒密码”有高手没?帮帮忙,只能用C++语言做哦
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
const int MAX_N=200;
int main(int argc, char *argv[])
{
int i,j,p;
char text[MAX_N];
char alphabet[30];
char op[10];
while(1)
{
printf("1---输入密码表 2---退出\n");
gets(op);
if(strcmp(op,"1")==0)
{
printf("密码表:");
gets(alphabet);
while(1)
{
printf("1---加密 2---解密 3---返回\n");
gets(op);
if(strcmp(op,"1")==0 ||strcmp(op,"2")==0 )
{
printf("输入文本:");
gets(text);
for(i=0;text[i]!='\0';i++)
{
if((text[i]>='a'&&text[i]<='z') || (text[i]>='A'&&text[i]<='Z') )
{
if(strcmp(op,"1")==0)
{
p=text[i]>='a'? (text[i]-'a'):(text[i]-'A');
text[i]=text[i]+ alphabet[p]-(p+'A');
}
else
{
for(j=0;;j++)
if(alphabet[j]==text[i]||alphabet[j]==(text[i]-('a'-'A')))
break;
text[i]= text[i]>='a' ? (j+'a') :(j+'A');
}
}
}//for(i)
if(strcmp(op,"1")==0)
printf("加密后的文本为:" );
else
printf("解密后的文本为:");
printf("%s\n\n",text);
}
else if(strcmp(op,"3")==0)
{
printf("\n");
break;
}
else
{
printf("选择有误!请重新选择!\n");
}
}//while(1)
}
else if(strcmp(op,"2")==0)
{
exit(1);
}
else
{
printf("选择有误!请重新选择!\n");
}
}
return 0;
}
/*
输入样例
QWERTYUIOPASDFGHJKLZXCVBNM
Welcome to ZZSY2009!
输出样例
Vtsegdt zg MMLN2009!
*/
VB使用恺撒密码加密或解密文件源码。老一ARTERIOSCLEROS快来帮忙~
老鼠,你看你这样提问,人家都不敢回答了,太露骨了罢。
=================
Option Explicit
Private Sub Form_Load()
Open "d:\a.txt" For Binary As 1
Open "d:\1.txt" For Binary As 2
Dim s() As Byte, i As Long
ReDim s(LOF(1))
s = InputB(LOF(1), 1)
For i = 0 To UBound(s) - 1
Put 2, i + 1, s(i) + 1 '这个1就是密码?
Next
Close
End
End Sub
恺撒(caesar)密码如何用C语言编写,要求是加密和解密都有
我写了一个加密的
#include <stdio.h>
#include <string.h>
#define MAXSIZE 81
int main()
{
char str[MAXSIZE];
int i;
int offset;
int n;
printf("请输入要加密的字符串:"); //最大输入个数是80个字符
gets(str);
printf("请输入要偏移量:"); //若将a变为b,则偏移量为1,以此类推,偏移量在1-25之间
scanf("%d%*c", &offset);
n = strlen(str);
for (i = 0; i < n; i++)
{
if ('a' <= str[i] && str[i] <= 'z' - offset || 'A' <= str[i] && str[i] <= 'Z' - offset)
str[i] += offset;
else
str[i] += offset - 26;
}
printf("加密后的字符串是:");
puts(str);
return 0;
}
加密解密“恺撒密码”有高手没?帮帮忙,只能用C语言做哦
c++语言编写网址:
http://meipu-001.blog.sohu.com/17636591.html
c语言编写网址:
http://zhidao.baidu.com/question/14453586.html?si=4&wtp=wk
转载请注明出处51数据库 » 恺撒密码加密解密软件 用C语言编程恺撒密码加密解密程序
Photoshop|
Dreamweaver|
SVG|
WebGL|
Visual Studio|
PowerDesigner|
Eclipse|
Git|
Apache Ant|
Atom|
Composer|
CodeSmith|
Flex|
Gradle|
Maven|
Sublime Text3|
SVN|
Tableau|
Vim|
Chrome开发者工具|
OpenGL|
Unity|
Direct3D|
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....