使用for 编写一个程序,可以接收一个正数,表示层数,打印出金字塔的
编程思路
1. 打印出一个矩形
***
***
***
2. 打印半个金字塔
*
**
***
3. 打印整个金字塔
* 1层 1个* 规律: 2 * 层数 - 1 ,空格2 规律 总层数 - 当前层数
*** 2层 3个* 规律: 2 * 层数 - 1 ,空格1 规律 总层数 - 当前层数
***** 5层 5个* 规律: 2 * 层数 - 1 ,空格0 规律 总层数 - 当前层数
4. 将层数做成一个变量,先死后活
var totalLevel int
5. 打印空心金字塔
分析:在我们给每行打印*号时,需要考虑是打印*还是打印空格,我们的分析结果是,每一层的第一个和最后一个打印*,
其他的都是空格,最后的底层全是*
*/
func main() {
var totalLevel int = 8
//i 行数
for i := 1; i <= totalLevel; i++ {
for k := 1; k <= totalLevel - i; k++{
fmt.Print(" ")
}
//j 星的数量
for j := 1; j <= 2 * i - 1 ; j++ {
if j == 1 || j == 2 * i - 1 || i == totalLevel {
fmt.Print("*")
} else {
fmt.Print(" ")
}
}
fmt.Println()
}
}
golang 打印空心金字塔,编程思路
于 2022-06-12 21:31:15 首次发布