我是靠谱客的博主 专注煎蛋,这篇文章主要介绍C#实现“凯撒”密码的算法,现在分享给大家,希望可以做个参考。

凯撒密码的算法很简单。该算法中,单词的每一个字母都被字母表中与该字母相隔四个字母的下一个字母替换。例如,“Abyz”变成了“Fgde”

public string Caesar(string str)     

{         int spaceNum = 5;         c

har[] c= str.ToCharArray();         

string strCaesar = "";         

for (int i = 0; i < str.Length; i++)         

{             s

tring ins=c[ i ].ToString ();             

string outs="";             

bool isChar = "abcdefghijklmnopqrstuvwxyz".Contains(ins.ToLower());             bool isToUpperChar=isChar && (ins.ToUpper()==ins);             

ins=ins.ToLower ();             

if (isChar)             

{                 i

nt offset=(AscII(ins)+spaceNum-AscII ("a"))%(AscII ("z")-AscII ("a")+1) ;                 outs = Convert.ToChar(offset + AscII("a")).ToString ();                 

if(isToUpperChar)                 

{                     

outs=outs.ToUpper();                 

}             

}             

else              

{                 

outs =ins;             

}             

strCaesar+=outs;         

}         

return strCaesar ;     

}

 

其中将字符转换为ASCII码的代码如下:

public int AscII(string str)     {

         byte[] array = new byte[1];         

array = System.Text.Encoding.ASCII.GetBytes(str);         

int asciicode = (short)(array[0]);         

return asciicode;     

}

最后

以上就是专注煎蛋最近收集整理的关于C#实现“凯撒”密码的算法的全部内容,更多相关C#实现“凯撒”密码内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(116)

评论列表共有 0 条评论

立即
投稿
返回
顶部