#include<stdio.h>
void main()
{
char a[26]={'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'},b[26];
int i,j,k;
clrscr();
printf("Please input the No. you want to move(0<=j<=25):/t");
scanf("%d",&j);
for(i=0;i<=25;i++)
{
k=(i+j)%26;
b[i]=a[k];
}
for(i=0;i<=25;i++)
{
printf("%c ",a[i]);
}
printf("/n");
for(i=0;i<=25;i++)
{
printf("%c ",b[i]);
}
getch();
}
原理其实很简单,就是字母表中各个元素移位,就这些。
顺便写上加密的代码,还不能对句子进行加密,只能单词,但是支持大小写,同样的大写加密规律同小写的是一样的,同样移位。
#include<stdio.h>
#include<ctype.h>
void main()
{
char a[26]={'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'},b[26],*c,d[26];
int i,j,k;
clrscr();
printf("Please input the No. you want to move(0<=j<=25):/t");
scanf("%d",&j);
for(i=0;i<=25;i++)
{
k=(i+j)%26;
b[i]=a[k];
}
for(i=0;i<=26;i++)
{
d[i]=b[i]-32;
}
for(i=0;i<=25;i++)
{
printf("%c ",a[i]);
}
printf("/n");
for(i=0;i<=25;i++)
{
printf("%c ",b[i]);
}
printf("/nPlease input the String you want to Encrypt:/t");
scanf("%s",c);
for(;*c!='/0';c++)
{
if(isalpha(*c)){
if(islower(*c))
*c=b[*c-97];
else *c=d[*c-65];
}
}
printf("The Encrypted Sting is:/t%s");
getch();
}
下面实验截图:
每天进步一点点~~
字母移位加密算法实现
本文介绍了使用C语言实现的一种简单字母移位加密算法。通过输入移位数,程序能够生成新的字母表,并对字符串进行加密处理。支持大小写字母加密,展示了完整的代码示例及运行效果。
1426

被折叠的 条评论
为什么被折叠?



