编写Java程序实现,不使用循环语句,从键盘输入一个7位的整数,逆 输出这个7位整数,如8639427输出为7249368. 提示:使用a%10得到a的个位,再通过a/10得到除个位外剩下的位。
时间: 2024-09-19 19:01:25 浏览: 40
可以使用递归的方式来实现这个功能,因为递归函数会自动处理每一位数字,并将其添加到结果的最前面。以下是使用递归的Java代码示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个7位的整数:");
int input = scanner.nextInt();
if (input < 10 || input > 999999) {
System.out.println("输入错误,请确保是7位整数。");
return;
}
// 递归函数将个位放在最前面
String reversedNum = reverse(input);
System.out.println("逆序后的数字是: " + reversedNum);
}
// 递归函数,将输入的整数转换成字符串并反转
private static String reverse(int num) {
if (num == 0) { // 当前数字是个位,返回该数字
return Integer.toString(num);
} else {
// 提取个位并移除,然后递归处理剩余部分
int lastDigit = num % 10; // 获取个位
int remaining = num / 10; // 去掉个位后的部分
return reverse(remaining) + lastDigit; // 递归并连接
}
}
}
```
在这个程序中,用户输入一个7位整数,如果输入合法,程序会调用`reverse`函数,每次递归都将原数的个位移到结果的最前面。
阅读全文