public class Main {
public static int multiply(int z) {
if(z > 0) {
return z * multiply(z - 1);
}else{
return 0;
}
}
public static void main(String[] args) {
int answer = multiply(10);
System.out.println(answer);
}
}我在运行这段代码时遇到了一些问题,但是当我尝试使用加法函数时,它确实有效。
发布于 2022-05-18 18:04:54
正如progman in the comments所提到的,只需在if-语句中将0更改为1,在else语句中返回1。这样,你就不会在末尾乘以0。
例如:
public static int multiply(int z) {
if(z > 1) {
return z * multiply(z - 1);
}else{
return 1;
}
}https://stackoverflow.com/questions/72293958
复制相似问题