请实现程序输出以下星塔。 * *** ***** *** * 需要在main函数的输入参数中设置5,输出5层星塔。如果是输入7,则是7层星塔。假设输入参数都是奇数,且都大于等于5,小于等于11
时间: 2023-11-25 22:07:07 浏览: 19
以下是Java代码实现输出星塔的功能:
```
public class StarTower {
public static void main(String[] args) {
int n = Integer.parseInt(args[0]);
int mid = n / 2 + 1;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= Math.abs(mid - i); j++) {
System.out.print(" ");
}
for (int k = 1; k <= n - 2 * Math.abs(mid - i); k++) {
System.out.print("*");
}
System.out.println();
}
}
}
```
解释:
首先,我们通过 `Integer.parseInt(args)` 获取输入参数中的整数值,即星塔的层数。
然后,我们计算出星塔中心的位置,即第 `(n / 2 + 1)` 行。
接下来,我们使用两个嵌套的循环来输出星塔。外层循环控制行数,内层循环控制每行输出的空格和星号。
内层循环中,我们首先输出空格,空格的数量为星塔中心位置与当前行数的差的绝对值。然后,我们输出星号,星号的数量为 `n - 2 * Math.abs(mid - i)`,即星塔总宽度减去当前行两侧的空格数量。
最后,我们在每行输出结束后换行。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)