一、for循环入门
编写一个程序,可以打印10句话。
//for循环使用
package main
import (
"fmt"
)
func main(){
//传统方法实现
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
fmt.Println("hello,cat")
//使用for循环实现
for i := 0; i < 10; i++ {
fmt.Println("hello,dog",i)
}
}
二、基本语法
for循环变量初始化;循环条件;循环变量迭代{
循环操作(语句)
}
三、流程图
四、注意事项
1、循环条件是返回一个布尔值的表达式
2、for循环的第二种使用方式,将变量初始化和变量迭代写到其它位置
for循环判断条件{
循环执行语句
}
//for循环使用
package main
import (
"fmt"
)
func main(){
i := 1
for i <= 10{
fmt.Println("hello",i)
i++
}
}
3、for循环的第三种使用方式, 一个无限循环,通 常需要配合break语句使用。
for {
循环执行语句
}
//for循环使用
package main
import (
"fmt"
)
func main(){
i := 1
for {
if i <= 5 {
fmt.Println("hello",i)
} else {
break
}
i++
}
}
4、Golang提供for-range的方式,可以方便遍历字符串和数组
//for循环使用
package main
import (
"fmt"
)
func main(){
//传统遍历
var str string = "jack天堂"//当有汉字,会乱码
//使用切片解决乱码
str2 := []rune(str)
for i := 0; i < len(str2); i++{
fmt.Printf("%c \n",str2[i])
}
//使用for-range遍历
var str3 string = "hello,鸭子"
for index, value := range str3 {
fmt.Printf("index=%d,value=%c \n",index,value)
}
}
练习一
打印1~100之间所有是9的倍数的整数的个数及总和
//for循环使用
package main
import (
"fmt"
)
func main(){
var a1 int = 100
fmt.Println("请输入一个数")
fmt.Scanln(&a1)
var a2 int //记录数的个数
var a3 int //累计求和
for i := 1; i<= a1; i++ {
if i % 9 == 0 {
a2++
a3 += i
}
}
fmt.Println(a2,"\t",a3)
}
练习二
//for循环使用
package main
import (
"fmt"
)
func main(){
//定义一个变量
var a1 int
fmt.Println("请输入一个数")
fmt.Scanln(&a1)
for i := 0; i <= a1; i++ {
fmt.Println(i,"+",a1 - i,"=",a1)
}
}