1. 程式人生 > >關於串兒的一二三

關於串兒的一二三

設計思想 英文字母 pac 字符串長度 height -1 amp 程序 sci

古羅馬皇帝凱撒在打仗時曾經使用過以下方法加密軍事情報:

技術分享

請編寫一個程序

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.結果截圖

關於串兒的一二三