我如何在java中正确打印我的答案

Posted

技术标签:

【中文标题】我如何在java中正确打印我的答案【英文标题】:How do i make my answer print correctly in java 【发布时间】: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 &lt; i; j+=1)永远不会为i = 0执行,因为你正在检查j = 0是否小于i = 0,因此它在最后打印空字符串系统输出 【参考方案1】:

第一轮i = 0,不进入内层for循环,进入条件为j &lt; i,即0 &lt; 0 => false

【讨论】:

哦,好的,我将如何解决这个问题 一个超级肮脏的方式可能是一个简单的if (i == 0) print("1")在正确的位置,即在内部for旁边,无论是之前还是之后:)

以上是关于我如何在java中正确打印我的答案的主要内容,如果未能解决你的问题,请参考以下文章

如何在java中正确使用keylistener

如何在没有IllegalMonitorStateException的Java中使用wait和notify?

如何将所有分类结果打印到 GUI 上的文本小部件?

如何在 Python 中打印变量? [关闭]

如何在Intellij Idea中更改项目的java版本?

如何在JAVA中打印int的ASCII值