zoukankan      html  css  js  c++  java
  • 关于串儿的一二三

    古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报:

    请编写一个程序

    1.设计思想

    由用户键入一个字符串,并用函数得到用户输入的字符串的长度,而后将字符串转化为字符数组。由ascII码与大小写字母的关系将每个字符转化为对应的字符,而后将转换好的字符即加密字符串打印输出。

    2.程序流程图

    3.源代码

    package jiami;

    //课后作业1:字串加密.每个字符都对应它以后的第三个字符,进行加密。  2015.10.25  底云飞

    //65~90为26个大写英文字母,97~122号为26个小写英文字母

    import java.util.Scanner;

    public class Screat { 

    privatestatic Scanner scan;  //私有静态Scanner类变量

    public static void main(String[] args){

    int length;  //用户输入的字符串长度

    String zifu;  //用户输入的字符串

    scan = new Scanner(System.in);  //给scan申请空间

    System.out.println("请输入英文字符串:");

    zifu = scan.nextLine();  //读取用户输入的字符串并赋值给zifu

    System.out.println("你输入的字符串为:"+zifu);

    length = zifu.length();  //得到用户输入字符串的长度

    char array[] = zifu.toCharArray();  //将用户输入的字符串转化为字符数组

    for(int i=0;i<length;i++)  //将每个字符进行变换

    {    //a到w的字符每个向后加3,x,y,z这三个每个减去23得到变换后的

    if((array[i]>=65&&array[i]<=87)||(array[i]>=97&&array[i]<=119))

    array[i]=(char) (array[i]+3);

    else if((array[i]>=88&&array[i]<=90)||(array[i]>=120&&array[i]<=122))

    array[i]=(char) (array[i]-23);

    }

    StringBuffer arr = new StringBuffer();  //定义一个stringbuffer类的变量arr

    for(int i=0;i<length;i++)

    {

    arr.append(array[i]);  //运用append方法,参考StringBufferAppend。java

    }

    String newstr = arr.toString();  //将变换后的重新组合为字符串

    System.out.println("加密后的英文为:"+newstr);  //打印组合后的字符串

    }

    }

    4.结果截图

  • 相关阅读:
    [杂七杂八][高效程序员应该养成的七个习惯][转载]
    链表反转,只用两次头插法就实现了 hello
    清除空格 hello
    单词计数 hello
    单词查找程序 hello
    sdut 超级玛丽
    ural Episode Nth: The Jedi Tournament(缩点+建树)
    sudt 括号东东(模拟题)
    ural Pilot Work Experience(dfs + bfs )
    ural Team building(强连通分支)
  • 原文地址:https://www.cnblogs.com/woshitiancai/p/7738267.html
Copyright © 2011-2022 走看看