Golang学习笔记【4】

读入数据

        Scanln是读到换行为止的呢

package main //声明文件所在的包,go语言必须要有

//引入程序中要用的包
import(
	"fmt"
)

func main(){
	var a int
	fmt.Scanln(&a)
	fmt.Printf("a = %v\n",a)
}

        如果录入数据是类型不匹配,就会出现错误或者默认值,但是不会报错 

        Scanf是读到空格或者换行为止的呢

package main //声明文件所在的包,go语言必须要有

//引入程序中要用的包
import(
	"fmt"
)

func main(){
	var a int
	fmt.Scanf("%v",&a)
	fmt.Printf("a = %v\n",a)
}

流程控制

        循环和判断的语法和c语言几乎没有差别但是要求不一样,写一下就明白了

【判断】 

package main //声明文件所在的包,go语言必须要有

//引入程序中要用的包
import(
	"fmt"
)

func main(){
	var a int = 2
	if a >= 10 {
		fmt.Printf("a = %v\n",a)
	} else { //else不能换行而且左括号也一样不能换行,这都是go的语法要求
		fmt.Println("不满足")
	}
	
}

        也可以在if语句中定义变量,但是如果在if语句中定义变量那变量的范围只能在if语句下,结束if语句变量就不能使用了

package main //声明文件所在的包,go语言必须要有

//引入程序中要用的包
import(
	"fmt"
)

func main(){
	if a := 5 ;a >= 10 {
		fmt.Printf("a = %v\n",a)
	} else {
		fmt.Println("不满足")
	}

}

         switch和c语言一样,但是不用写break而且default也不是必须的,这里就不展示了

 【循环】

        在go语言中只有for循环,没有while和do while循环!!!!

        for循环语句和c语言几乎一模一样,如果想要死循环也是一样的写法 

package main //声明文件所在的包,go语言必须要有

//引入程序中要用的包
import(
	"fmt"
)

func main(){
	var sum int = 0
	for i := 1;i <= 5;i++{//注意go只有i++,没有++i
		sum += i
	}
	fmt.Println(sum)

}

 【for range结构】特殊!!!!

        for range结构是用来遍历数组,字符串,切片,map等作用的,是go语言中的迭代结构

package main //声明文件所在的包,go语言必须要有

//引入程序中要用的包
import(
	"fmt"
)

func main(){
	var s string = "hello world"
	for i , value := range s {
		fmt.Printf("索引:%v  具体值:%c\n",i,value)
	}

}
/*输出
索引:0  具体值:h
索引:1  具体值:e
索引:2  具体值:l
索引:3  具体值:l
索引:4  具体值:o
索引:5  具体值:
索引:6  具体值:w
索引:7  具体值:o
索引:8  具体值:r
索引:9  具体值:l
索引:10  具体值:d
*/

这样大家也很容易的看出来for range的作用和用法了 

【goto】

goto语句,goto是可以无条件的跳转到代码的某一行,一般配合if语句使用,但是因为可能会很混乱所以不建议使用,这边也不过多介绍,感兴趣的话可以去官网查看

如果这篇笔记让您会心一笑,求求各位大佬赏个赞呀~(๑>︶<)و
遇到问题欢迎来评论区扔小石子提问~(摇尾巴递茶)(ฅ´ω`ฅ)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值