GO打印左箭星图案的程序

91 阅读1分钟

编写一个Go程序,使用for循环打印左箭头星形图案。

package main

import "fmt"

func main() {
var i, j, k, row int

fmt.Print("Enter Left Arrow Star Pattern row = ")
fmt.Scanln(&row)

fmt.Println("Left Arrow Star Pattern")

for i = 1; i <= row; i++ {
	for j = 1; j <= row-i; j++ {
		fmt.Printf(" ")
	}
	for k = i; k <= row; k++ {
		fmt.Printf("\*")
	}
	fmt.Println()
}

for i = 1; i < row; i++ {
	for j = 0; j < i; j++ {
		fmt.Printf(" ")
	}
	for k = 0; k <= i; k++ {
		fmt.Printf("\*")
	}
	fmt.Println()
}

image.png 这个围棋例子打印了一个给定字符的左箭头图案。

package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
reader := bufio.NewReader(os.Stdin)

var i, j, k, row int

fmt.Print("Enter Left Arrow Star Pattern row = ")
fmt.Scanln(&row)

fmt.Print("Character to Print in Left Arrow = ")
ch, \_, \_ := reader.ReadRune()

fmt.Println("Left Arrow Star Pattern")

for i = 1; i <= row; i++ {
	for j = 1; j <= row-i; j++ {
		fmt.Printf(" ")
	}
	for k = i; k <= row; k++ {
		fmt.Printf("%c", ch)
	}
	fmt.Println()
}

for i = 1; i < row; i++ {
	for j = 0; j < i; j++ {
		fmt.Printf(" ")
	}
	for k = 0; k <= i; k++ {
		fmt.Printf("%c", ch)
	}
	fmt.Println()
}
Enter Left Arrow Star Pattern row = 12
Character to Print in Left Arrow = $
Left Arrow Star Pattern
           $$$$$$$$$$$$
          $$$$$$$$$$$
         $$$$$$$$$$
        $$$$$$$$$
       $$$$$$$$
      $$$$$$$
     $$$$$$
    $$$$$
   $$$$
  $$$
 $$
$
 $$
  $$$
   $$$$
    $$$$$
     $$$$$$
      $$$$$$$
       $$$$$$$$
        $$$$$$$$$
         $$$$$$$$$$
          $$$$$$$$$$$
           $$$$$$$$$$$$