我今晚为我的AP计算机科学课做的简短家庭作业是更改此嵌套循环,以使其打印1、3、5、7星,而不是1、2、3、4、5、6、7星。
这是我的代码:
public static void main(String args[])
{
//print 1,3,5,7 stars
for(int i=1; i<=7; i++)
{
for(int j=1; j<=i; j++)
{
System.out.print("*");
}
System.out.println();
}
}
答案 0 :(得分:3)
将i
增加两个而不是一个
for(int i=1; i<=7; i = i + 2)
或@andreas的建议
for(int i=1; i<=7; i+= 2)
输出
*
***
*****
*******
修改
根据@andreas在下面的评论,在java11 +中,以下也是可能的
for(int i=1; i<=7; i += 2)
System.out.println("*".repeat(i));
答案 1 :(得分:1)
由于@ScaryWombat已经answered,因此您可以将i
加2以实现所需的模式。我希望消除循环的嵌套结构;您知道最长的输出是七颗星,初始化一个常量String
并为每行打印相应的子字符串。喜欢,
String stars = "*******";
for (int i = 1; i <= stars.length(); i += 2) {
System.out.println(stars.substring(0, i));
}
答案 2 :(得分:0)
查看模%
运算符
如果i%2 == 0
我让你尝试一下。