我是用数组做的,但是输出结果总是不对。
求大神解答
import java.util.Scanner;
import java.util.Arrays;
class Jia{
Scanner input=new Scanner(System.in);
int[]arr=new int[7];
int i;
public void fangfa()
{
for( i=0;i<7;i++)
{ int a=arr[i];
a=input.nextInt();
System.out.println(arr[i]+" ");
}
System.out.println("加密后的号码为");
for(i=0;i<7;i++)
{
arr[i]=arr[i]+5;
}
int temp=arr[0];
arr[0]=arr[6];
arr[6]=temp;
for(i=0;i<7;i++)
{
System.out.println(arr[i]+"");
}
}
}
public class Jiami {
public static void main(String[] args) {
Jia j=new Jia();
System.out.println("输入要加密的号码");
j.fangfa();
}}
我那个先没有除以10,因为先加上5去试试结果也是错的
思路如下:
1,构造一个7位号码的数组
2,构造一个7位号码并且每位号码加5并除以10的余数的数组
怎么错了,如果之前尾数是5那就可能有问题
每位数字都小于5作为输入,结果就是正确的。 大于5为什么不行你自己想。 arr[i]=(arr[i]+5)%10;加上求余数程序就行了
你得到的应该是 0 吧 首先你先声明了一个长度为7的int空数组也就是 【0,0,0,0,0,0,0】 之后你没有去修改这些东西
能告诉我下面这个代码的意思 吗?
for( i=0;i<7;i++)
{ int a=arr[i];
a=input.nextInt();
System.out.println(arr[i]+" ");
}
a=arr[i]然后a=input.nextInt(),请问arr[i]是什么?你的数组根本就没有初始化值
你试试这个
for( i=0;i<7;i++)
{ arr[i]=input.nextInt();
System.out.println(arr[i]+" ");
}
int a=arr[i];
a=input.nextInt();
改成
arr[i]=input.nextInt();
数组根本没有赋值
for( i=0;i<7;i++)
{ int a=arr[i];
a=input.nextInt();
System.out.println(arr[i]+" ");
}