我应该使用递归方法垂直打印出数字的数字。
例如,如果我输入 13749,输出将是:
1
3
7
4
9
我该如何回答这个问题?它还指出我应该使用 if/else 方法来检查基本情况。我刚刚开始学习 java,但我不太擅长:(
import java.util.Scanner;
public class test2 {
public static void main (String [] args){
Scanner sc = new Scanner(System.in);
System.out.print("Enter a positive integer: ");
int n = sc.nextInt();
System.out.println();
System.out.println(numbers(n));
}
public static int numbers(int n){
int sum;
if (n == 0) {
sum = 1;
} else {
System.out.println(n%10);
sum = numbers(n / 10) + (n % 10);
}
return sum;
}
}
最佳答案
这是我的 C++ 代码
只需将其修改为 Java 即可。您需要在调用函数后显示数字,这样您首先显示最后一个数字...根据 s.ts 的答案
void recursive(int n) {
if (n < 10)
cout << n << endl;
else
{
recursive(n / 10);
cout << n % 10 << endl;
}
}
关于java - 逐行打印数字的递归方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18720566/