public static void main(String[] args)
{
//call for input
System.out.println("Please Enter a 3-digit number..");
Scanner in = new Scanner(System.in);
int[] num = new int[3];
int val = in.nextInt();
for(int i = 0; i < num.length; i++);
System.out.println("The Sum of the numbers is " + num[0] + num[1]+ num[2]);
System.out.println("The Reverse of the numbers is " + num[2] + num[1]+ num[0]);
}
输入应该是任何大于 10 的数字,但是当我给出它时 任何数字,它都会给我相同的 000?
最佳答案
您的代码有问题:
你永远不会将用户输入放入 num 数组中,for 循环只是一个主动等待,
立即尝试:
public static void main(String[] args)
{
//call for input
System.out.println("Please Enter a 3-digit number..");
Scanner in = new Scanner(System.in);
int val = in.nextInt();
int[] num = new int[3];
if(val<=99) // is not a 3 digit number
return;
int i =2;
while (val > 0) {
num[i]=(val%10);
val = val / 10;
i--;
}
System.out.println("The Sum of the numbers is " + (num[0] + num[1]+ num[2]));
System.out.println("The Reverse of the numbers is " + num[2] +""+ num[1]+""+ num[0]);
}
通过输入 1 - 2 -3 可以得到:
Please Enter a 3-digit number..
1
2
3
The Sum of the numbers is 6
The Reverse of the numbers is 321
关于java - Java中对单个输入求和和反转的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18455742/