打印金字塔

GO语言开发-for循环题目-金字塔及空心金字塔_for

var totallevel int = 30

func main() {
	for i := 1; i <= totallevel; i++ {
		// 第1层 t - 1 个 空格
		for k := 1; k <= totallevel-i; k++ {
			fmt.Print(" ")
		}
		// 第1层 2 - 1 课*
		for j := 1; j <= 2*i-1; j++ {
			fmt.Print("*")
		}
		fmt.Println()

	}
}

 

打印空心金字塔

GO语言开发-for循环题目-金字塔及空心金字塔_for_02

func main() {

	// 每层开始
	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()
	}
}