經典案例打印空心金字塔

package main

import “fmt”

/*
打印金字塔經典案例
使用for循環完成下面的案例
請編寫一個程序,可以接受一個證書,表示層數,打印出金字塔。(上機練習題,打印空心金字塔)
1)完成思路,可以先從矩形開始打
2)代碼實現
3)打印金字塔經典案例
/
func main(){
//使用for循環完成下面的案例請編寫一個程序,可以接受一個證書,表示層數,打印出金子塔
//分析編程思路
//走代碼
//編程思路
//1.打印一個矩形
/

***
***
***

 */
 //2.打印半個金字塔
 /*

 *        1個*
 **       2個*
 ***      3個*

 */

 //3 打印整個金字塔

 /*

      *      1層1個*   規律:2*層數-1  空格2  規律 縂層數-當前層數
     ***     2層3個*   規律:2*層數-1  空格1  規律 縂層數-當前層數
    *****    3層5個*   規律:2*層數-1  空格0  規律 縂層數-當前層數

 */
 //4將層數做成一個變量
 //var totalLevel int
 //5打印空心金字塔
 /*

      *
     ***
    *****
 分析:在我們給每行打印*號時,需要考慮是打印 * 還是打印空格,我們的分析結果是,每層的第一個和最後一個是打印*,其他就應該是空的,輸出空格。
 還需要分析道一個例外情況,最後層是全部打*


  */

  var totalLevel int = 9
  //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()

 }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值