【发布时间】:2020-05-27 18:17:13
【问题描述】:
我遇到了一个问题,当我的程序打印 (base)^0= 时,它没有打印答案 (1)
(我支持输出示例,因为我只对输出的第一行有问题)
预期输出:
2^0=1 2^1=2 2^2=2*2=4 2^3=2*2*2=8 2^4=2*2*2*2=16
实际输出:
> 2^0=
> 2^1=2=2
> 2^2=2*2=4
> 2^3=2*2*2=8
> 2^4=2*2*2*2=16
代码:
else if(option == 2){
base = Input.nextInt();
for(int i = 0; i<10; i+=1){
System.out.print(base+"^"+i+"=");
for(int j = 0; j < i; j+=1){
if(j != i -1){
System.out.print(base+"*");
}else{
System.out.format(base+"="+"%.0f",Math.pow(base,i));
}
}
System.out.println("");
}
}
【问题讨论】:
-
不要介意其他输出问题,我可以解决这些问题,我只是不知道为什么它没有在第一行放 1
-
嗨@andreas,你的for循环
for(int j = 0; j < i; j+=1){永远不会为i = 0执行,因为你正在检查j = 0是否小于i = 0,因此它在最后打印空字符串系统输出