| 终于搞定谢谢大家,以后一定规范写 
 
 
 import java.util.Scanner;
 class Encrypt
 
 {
 public static void main(String[] args)
 {
 Scanner sc = new Scanner (System.in);
 System.out.println("现在输入的是加密数字的位数");
 int length =   sc.nextInt();
 int [] arr = new  int [length];
 System.out.println("现在输入加密数字");
 int num  = sc.nextInt();
 int sum = num;
 int count = 0;
 //对输入的数字进行判断其输入的长度和数字本身是否相符
 //如果相符,就把这个数字输入数组中,如果不相符,则返回说输入有误
 //请重新输入。
 //输入数字的长度和数字本身的长度应该怎么判断呢???
 //可以把这个数放到循环中,num = num/10;判断一次num是否小于10,小于结束,大于count++,继续循环
 
 boolean flag = true;
 
 while (flag = true)
 {
 
 while (num >0)
 {
 num /=10;
 count++;
 }
 if (length==count)
 {
 for (int x =0;x<length ;x++ )
 {
 arr[x]=sum%10;
 sum = sum /10;
 
 }
 toBin(arr);
 break;
 }
 else
 {
 System.out.println("输入的数字有误,请输入和您输入的位数相符的数字,谢谢");
 num  = sc.nextInt();
 
 }
 }
 
 }
 public static void toBin( int [] arr)
 {
 for (int x = 0;x<arr.length ;x++ )
 {
 
 int z = arr[x]+5;
 arr[x] = z%10;
 
 }
 int temp=0;
 temp  = arr[0];
 arr[0] = arr[arr.length-1];
 arr[arr.length-1] = temp;
 for (int x = 0;x<arr.length ;x++ )
 {
 System.out.print(arr[x]+"   ");
 }
 }
 
 }
 
 |