标签:+= ack 截图 string str system ext 选择 int()
一.字符串加密
1.设计思想
输入英文字符串,根据加密或解密密码将英文字符串进行逐个加密或解密,最后输出加密或解密后的字符串
2.程序流程图

3.源代码
package kaisa;
import java.util.Scanner;
public class kaisa
{
   public static void main(String[] args)
  {
   System.out.println("请选择:1.加密  2.解密");
   Scanner c=new Scanner(System.in);
   String ss=c.nextLine();
   if(ss.equalsIgnoreCase("1"))//if语句判断加密还是解密
   {
       System.out.println("请输入要加密的英文字符串");
       Scanner sc=new Scanner(System.in);
       String s=sc.nextLine();
       System.out.println("请入加密密码");
       Scanner sc1=new Scanner(System.in);
       int key=sc1.nextInt();
       jiami(s,key);
   }
   else if(ss.equalsIgnoreCase("2"));
   {
       System.out.println("请输入要解密的英文字符串");
       Scanner sc=new Scanner(System.in);
       String s=sc.nextLine();
       System.out.println("请输入解密密码");
       Scanner sc1=new Scanner(System.in);
       int key=sc1.nextInt();
       jiemi(s,key);
   }
 }
   
   public static void jiami(String str,int k)//加密函数
 {
   String string="";
   for(int i=0;i<str.length();i++)
   {
    char c=str.charAt(i);
    if(c>=‘a‘&&c<=‘z‘)
    {
    c+=k%26;
    if(c<‘a‘)
       c+=26;
    if(c>‘z‘)
       c-=26;
    }
    else if(c>=‘A‘&&c<=‘Z‘)
    {
     c+=k%26;
     if(c<‘A‘)
        c+=26;
   if(c>‘Z‘)
     c-=26;
    }
    string+=c;
   }
   System.out.println(str+"加密后为:"+string);
 }
   
  public static void jiemi(String str,int n)//解密函数
 {
   int k=Integer.parseInt("-"+n);
   String string="";
   for(int i=0;i<str.length();i++)
   {
   char c=str.charAt(i);
   if(c>=‘a‘&&c<=‘z‘)
   {
    c+=k%26;
    if(c<‘a‘)
    {
       c+=26;
    }
    if(c>‘z‘)
    {
       c-=26;
    }
    else if(c>=‘A‘&&c<=‘Z‘)
    {
     c+=k%26;
     if(c<‘A‘)
    {
      c+=26;
    }
    if(c>‘Z‘)
    {
      c-=26;
    }
    string+=c;
  }
  System.out.println(str+"加密后为:"+string);
 }
}
4.结果截图


标签:+= ack 截图 string str system ext 选择 int()
原文地址:http://www.cnblogs.com/xqyfight/p/7742702.html