kaesar.h

来自「DES 加密解密代码实例」· C头文件 代码 · 共 51 行

H
51
字号
void kaesar_encryption(char m[],char key1)			 //kaesar加密算法
{
	int k=int(key1);
	if(k>=97)
		k=k-96;
	else
		k=k-64;
	for(int i=0;m[i]!='\0';i++)
	{
		if(int(m[i])>=97)
		{
			if(int(m[i])+k>122)
				m[i]=char(int(m[i])+k-26);
			else
				m[i]=char(int(m[i])+k);
		}
		else
		{
			if(int(m[i])+k>90)
				m[i]=char(int(m[i])+k-26);
			else
				m[i]=char(int(m[i])+k);
		}
	}
}

void kaesar_decryption(char m[],char key1)		//Kaesar解密算法
{
	int k=int(key1);
	if(k>=97)
		k=k-96;
	else
		k=k-64;
	for(int i=0;m[i]!='\0';i++)
	{
		if(int(m[i])>=97)
		{
			if(int(m[i])-k<97)
				m[i]=char(int(m[i])-k+26);
			else
				m[i]=char(int(m[i])-k);
		}
		else
		{
			if(int(m[i])-k<65)
				m[i]=char(int(m[i])-k+26);
			else
				m[i]=char(int(m[i])-k);
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?