1. 程式人生 > 其它 >go的格式化輸入輸出

go的格式化輸入輸出

1, 鍵盤輸入的格式化輸入

2, 字串格式化輸入

3, 格式化輸出

點選檢視程式碼
package main

import "fmt"

func testScanf(){
	var a int
	var b string
	var c float32
	
/*	fmt.Scanf("%d%s%f",&a,&b,&c)  // 注意要在一行輸入,用空格分隔開才行,如果輸入一個,直接enter之後,只能第一個獲取的值
	fmt.Printf("收到的結果是: a=%d b=%s c=%f\n",a,b,c)*/

	/*// 分別輸入123 enter 45 enter 第三個沒來得及輸入就 顯示出來 收到的結果是: a=123 b= c=45.000000
	// 因為  window的enter換行符是\r\n  第二次會把第一次的輸入之後的\r\n讀進去
	fmt.Scanf("%d",&a)
	fmt.Scanf("%s",&b)
	fmt.Scanf("%f",&c)
	fmt.Printf("收到的結果是: a=%d b=%s c=%f\n",a,b,c)*/

	// 解決方法:  後面加上換行符\n,他會讀到\n就截止 fmt.Scanf是空格作為分隔符
	fmt.Println("請分別輸入數字,字串,小數")
	fmt.Scanf("%d\n",&a)
	fmt.Scanf("%s\n",&b)
	fmt.Scanf("%f\n",&c)
	fmt.Printf("fmt.Scanf收到的結果是: a=%d b=%s c=%f\n",a,b,c)
}

func testScan(){
	var a int
	var b string
	var c float32

	fmt.Scan(&a,&b,&c) // fmt.Scan是以空格或者換行符作為結束的,
	fmt.Printf("fmt.Scan收到的結果是: a=%d b=%s c=%f\n",a,b,c)
}

func testScanln(){
	var a int
	var b string
	var c float32

	fmt.Scanln(&a,&b,&c)  // fmt.Scanln必須在一行中輸入,空格作為分隔符,是以/r/n換行符結束的,一旦輸入enter就立馬結束
	fmt.Printf("fmt.Scanln收到的結果是: a=%d b=%s c=%f\n",a,b,c)
}

func testSscanf(){
	var a int
	var b string
	var c float32
	var  str  string="88 hello 6.7"
	//var  str  string="88\n hello 6.7"  // 輸出fmt.Sscanf收到的結果是: a=88 b= c=0.000000, 遇到換行符結束
	fmt.Sscanf(str,"%d %s %f",&a,&b,&c)
	fmt.Printf("fmt.Sscanf收到的結果是: a=%d b=%s c=%f\n",a,b,c)
}

func testSscan(){
	var a int
	var b string
	var c float32
	var str string="88 hello\n\n 6.7"  // 換行符作為分隔符,所以不受影響
	fmt.Sscan(str,&a,&b,&c)
	fmt.Printf("fmt.Sscan收到的結果是: a=%d b=%s c=%f\n",a,b,c)  // fmt.Sscan收到的結果是: a=88 b=hello c=6.700000

}

func testSscanln(){
	var a int
	var b string
	var c float32
	//var str  string="88 hello 6.7" // fmt.Sscanln收到的結果是: a=88 b=hello c=6.700000
	var str  string="88 hello \n6.7" // 遇到\n就結束了 fmt.Sscanln收到的結果是: a=88 b=hello c=0.000000

	fmt.Sscanln(str,&a,&b,&c)
	fmt.Printf("fmt.Sscanln收到的結果是: a=%d b=%s c=%f\n",a,b,c)
}

func main(){
	//testScanf()
	//testScan()
	//testScanln()
	//testSscanf()
	//testSscan()
	testSscanln()
	
}
 



寫入自己的部落格中才能記得長久