一、小程序要求:输出100以内能被2整除的数
代码如下:
package main
import "fmt"
func main() {
var max int = 100
number := 2
for i := 1; i <= max; i++ {
if i%number == 0 {
fmt.Println(i)
}
}
}
运行以及输出如下:
执行:go run test1.go
输出结果:
2
4
6
8
10
12
14
16
18
20
......
90
92
94
96
98
100
包含的知识点:
1)变量
Go语言包含的值类型:
字符串、整型、浮点型、布尔型等
变量的声明和赋值的四种写法:
⑴var 变量 = "字符串"
解释:使用var关键字声明一个变量并赋值
⑵var 变量a, 变量b int = 数字1, 数字2
解释:使用var关键字一次性声明多个变量,类型是int,然后并赋值
(“ 变量a, ” “变量b” “int”)三者之间至少一个空格
(“数字1, ” “数字2”) 两者之间至少一个空格
⑶var 变量 int
解释:使用var关键字声明一个变量为int类型,但是不赋值。这样的方式对于int类型默认值是0
⑷变量 := "字符串"
解释:将字符串赋值给变量,注意““:=”的写法是赋值操作,不需要提前申明
(“:=”和前后都至少有一个空格)
2)if/else分支结构
示例如下:
package main
import "fmt"
func main() {
age := 30
if age < 30 {
fmt.Println(age, "too young")
} else if age >= 30 || age <= 60 {
fmt.Println(age, "is good")
} else {
fmt.Println(age, "too old")
}
}
这是一个判断年龄的例子,首先定死了age就是30岁,
然后开始判断:
如果age小于30,就输出台年轻了
如果age大于等于30或者小于等于60,就输出不错
否则,以上条件都不满足,就输出太老了
3)for循环
示例要求:输出99乘法表
示例代码:
package main
import "fmt"
func main() {
for i := 1; i < 10; i++ {
for j := 1; j <= i; j++ {
fmt.Printf("%d*%d = %d\t", j, i, i*j)
}
fmt.Println()
}
}
输出如下所示:
1*1 = 1
1*2 = 2 2*2 = 4
1*3 = 3 2*3 = 6 3*3 = 9
1*4 = 4 2*4 = 8 3*4 = 12 4*4 = 16
1*5 = 5 2*5 = 10 3*5 = 15 4*5 = 20 5*5 = 25
1*6 = 6 2*6 = 12 3*6 = 18 4*6 = 24 5*6 = 30 6*6 = 36
1*7 = 7 2*7 = 14 3*7 = 21 4*7 = 28 5*7 = 35 6*7 = 427*7 = 49
1*8 = 8 2*8 = 16 3*8 = 24 4*8 = 32 5*8 = 40 6*8 = 487*8 = 56 8*8 = 64
1*9 = 9 2*9 = 18 3*9 = 27 4*9 = 36 5*9 = 45 6*9 = 547*9 = 63 8*9 = 72 9*9 = 81
解释:99乘法表采用了两套嵌套循环。
简单的单循环如下:
package main
import "fmt"
func main() {
for i := 1; i < 10; i++ {
fmt.Println(i)
if i >= 3 {
break
}
}
}
解释:在一个for循环中,首先定义一个条件,条件可以分为三块。
1、初始化变量i赋值为1
2、i要小于10
3、每次循环i就自动加1
for循环并输出值,并开始判断i的值如果大于等于3的时候则就知道break语句跳出循环。
知识点:在GO语言中for循环语句支持两个关键字,break和continue,两者的区别:
break:终止当前的for循环语句
continue:跳过当前的for条件,并继续下一次循环
做一个无限循环示例:
package main
import "fmt"
func main() {
var i int
for {
fmt.Println(i)
}
}
说明:执行这个代码会不停的输出i的值,可使用crtl+C将进程杀死停止,否则会一直执行下去。