zoukankan      html  css  js  c++  java
  • 课后作业1:字串加密

    1.设计思想:首先判断是要加密还是解密,然后再进行字符串的通过ASCLL码表值的加减来完成加密或者解密。

    2.程序流程图:

    3.源代码:

     1 package Luomamima;
     2 import java.util.Scanner;
     3 public class Test 
     4 {
     5     private static Scanner scan;
     6     public static void main(String[] args)
     7     {
     8         Scanner scanner=new Scanner(System.in);
     9         int length;  //用户输入的字符串长度  
    10         String s;
    11         scan = new Scanner(System.in); 
    12         System.out.println("请选择你要进行的操作:");
    13         System.out.println("1.加密字符串");
    14         System.out.println("2.解密字符串");
    15         int a=scanner.nextInt();
    16         System.out.println("请输入要加密或解密的字符串:");
    17         s  = scan.nextLine();  //读取用户输入的字符串并赋值给s
    18         System.out.println("你输入的字符串为:"+s );
    19         length = s .length();  //得到用户输入字符串的长度
    20         char array[] = s .toCharArray();  //将用户输入的字符串转化为字符数组
    21         if(a==1)//加密
    22         {    for(int i=0;i<length;i++)  //将每个字符进行变换
    23             {    
    24                 if((array[i]>=65&&array[i]<=87))
    25                     array[i]=(char) (array[i]+3);
    26                 else if((array[i]>=88&&array[i]<=90))
    27                     array[i]=(char) (array[i]-23);
    28             }
    29             StringBuffer arr = new StringBuffer();  //定义一个stringbuffer类的变量arr
    30             for(int i=0;i<length;i++)
    31             {
    32                 arr.append(array[i]);  //运用append方法,参考StringBufferAppend。java
    33             }
    34             String newstr = arr.toString();  //将变换后的重新组合为字符串
    35             System.out.println("加密后字符串为:"+newstr);  //打印组合后的字符串
    36         }
    37         if(a==2)//解密
    38         {
    39             for(int i=0;i<length;i++)  //将每个字符进行变换
    40             {    
    41                 if((array[i]>=68&&array[i]<=90))
    42                     array[i]=(char) (array[i]-3);
    43                 else if((array[i]>=65&&array[i]<=67))
    44                     array[i]=(char) (array[i]+23);
    45             }
    46             StringBuffer arr = new StringBuffer();  //定义一个stringbuffer类的变量arr
    47             for(int i=0;i<length;i++)
    48             {
    49                 arr.append(array[i]);  //运用append方法
    50             }
    51             String newstr = arr.toString();  //将变换后的重新组合为字符串
    52             System.out.println("解密后的字符串为:"+newstr);  //打印组合后的字符串
    53         }
    54                 
    55     }
    56 }

    4.结果截图:

    加密:

    解密:

  • 相关阅读:
    Vue 生命周期
    Vue
    对象
    【菜鸟学php】用菜鸟的眼光浅谈php上传文件
    在职程序猿为啥要考相关证书
    微信分享js失效,分享内容自定义将作为接口开放
    【菜鸟学Linux】gzip解压报错:gzip: stdin has more than one entry--rest ignored
    【菜鸟学php】在敲代码的路上,给自己点时间来思考
    【菜鸟学php】小菜鸟由帝国备份王在Wamp环境下打开500错误浅谈PHP程序员
    eclipse中使用ctrl无法追踪函数的问题(php项目)
  • 原文地址:https://www.cnblogs.com/liurx/p/7743909.html
Copyright © 2011-2022 走看看