Golang的循环结构-for语句

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.for循环语法

  循环结构在生活中的场景也非常的多,比如:
    ()上班族们每天朝九晚五的生活;
    ()一年四季周而复始的循环;
    ()奥运会上运动员围绕操场跑圈的场景;
    ()时钟的秒针,分针,时针规律的转动;
    ()各个国家每年特定的日子有特殊的节日,以中国为例,就有:元旦节,春节,清明节,劳动节,端午节,国庆节等
    ......   Go语言中最常用的for循环语法结构如下:
    for 表达式1;表达式2;表达式3 {
      //循环体
    }
  
  Go语法结构说明:
    表达式1:
      定义一个循环的变量,记录循环的次数。
    表达式2:
      一般为循环条件,循环多少次。
    表达式3:
      一般为改变循环条件的代码,使循环条件终有不再成立。
    循环体:
      重复要做的事情。   循环语句之间可以相互嵌套,嵌套循环语法如下:
    for 循环条件{
      for 循环条件{
        //代码块
      }
    }   循环控制语句:
    break:
      当它出现在循环语句中,作用是跳出当前内循环语句,执行后面的代码。
      当它出现在嵌套循环语句中,跳出最近的内循环语句,执行后面的代码。
    continue:
      在循环语句中,如果希望立即终止本次循环,并执行下一次循环,换句话说,就是跳过本次循环执行下一次循环。
    goto:
      goto语句也称为无条件转移语句,本篇博客暂时不涉及,在后续的笔记会有相应的使用案例。

二.for循环使用案例

1>.打印1-100之间数字之和

package main

import (
"fmt"
) func main() { //计算1-100之间的和
var sum int for i := ; i <= ; i++ {
sum += i
} fmt.Printf("[1-100]之间数字之和为:%d", sum)
}

2>.打印1-100之间的奇数

package main

import (
"fmt"
) func main() { //计算1-100之间的奇数之和
var sum int for i := ; i <= ; i += {
sum += i
} fmt.Printf("[1-100]之间数字之和为:%d", sum) }

3>.打印1000以内的水仙花数(循环条件+流程控制)

package main

import (
"fmt"
"math"
) func main() { /*
什么是水仙花数:
一个三位数,各个位数的立方和等于本身的数统称为水仙花数字 关于math包的用法,博主推荐阅读:
https://www.cnblogs.com/yinzhengjie/p/12203765.html
*/ fmt.Printf("1000以内的水仙花数有: ")
//计算1000以内的水仙花数
for i := ; i <= ; i++ {
//计算个位的三次方
one := int(math.Pow(float64(i%), )) //计算十位的三次方
ten := int(math.Pow(float64(i/%), )) //计算百位的三次方
hundred := int(math.Pow(float64(i/), )) if one+ten+hundred == i {
fmt.Printf("%d ", i)
}
}
fmt.Println() }

4>.打印九九乘法表(循环嵌套案例)

package main

import (
"fmt"
) func main() { //外层循环,控制循环次数
for i := ; i <= ; i++ {
//内层循环,控制每次外层循环,内层循环执行的次数
for j := ; j <= i; j++ {
fmt.Printf("%d x %d = %d\t", j, i, i*j)
}
fmt.Println()
}
}

5>.使用死循环方式打印1-10(break应用案例)

package main

import "fmt"

func main() {

    var index int

    //使用for的死循环语法
for {
index++
fmt.Printf("%d\t", index) //打印数字1-10
if index == {
break
}
}
fmt.Println()
}

6>.嵌套循环语句中break的作用范围

package main

import (
"fmt"
) func main() {
for i := ; i <= ; i++ {
for j := ; j < ; j++ {
if j == {
break
}
fmt.Printf("i = %d, j = %d\n", i, j)
}
}
}

7>.打印1-100之间的偶数(continue案例)

package main

import "fmt"

func main() {

    var (
sum int
) for i := ; i <= ; i++ {
if i% != {
continue
}
sum += i
} fmt.Printf("1-100之间的偶数之和为:%d\n", sum)
}