• Switch语句和for循环


    Switch 的使用

    //switch fallthrough的用法
    var score int

    fmt.Scan(&score)

    switch score / 10 {
    case 10:
    fallthrough
    case 9:
    fmt.Println("A")
    //case 内包含了 break 与 其他语言不同
    case 8:
    fmt.Println("B")
    case 7:
    fmt.Println("C")
    case 6:
    fmt.Println("D")
    default:
    fmt.Println("不及格")
    }

    //swicth 逗号分隔多个值
    var score int

    fmt.Scan(&score)

    switch score / 10 {
    case 10, 9:
    fmt.Println("A")
    case 8:
    fmt.Println("B")
    case 7:
    fmt.Println("C")
    case 6:
    fmt.Println("D")
    default:
    fmt.Println("不及格")
    }

    //switch 通过分支区间判断
    var score int

    fmt.Scan(&score)

    switch {
    case score >= 90:
    fmt.Println("A")
    case score >= 80:
    fmt.Println("B")
    case score >= 70:
    fmt.Println("C")
    default:
    fmt.Println("不及格")
    }

    注意:
    /* Go 语言中没有while 和do while

    For循环语句

    //计算1-100的总和
    sum:=0
    //定义变量 满足条件 改变变量 {代码块}
    for i:=1;i<=100;i++{
    if i%was 2==0{
    sum+=i
    }
    }

    //方法2
    for i:=0;i<=100;i+=2{
    sum+=i
    }

    for循环练习题

    //水仙花试题
    for i:=100;i<1000;i++{
    a:=i%10  //123%10 = 3
    b:=i%100/10 //123%100 = 12
    c:=i/100
    if a*a*a +b*b*b +c*c*c == i{
    fmt.Println(i)
    }
    }

    for 嵌套循环

    //外层循环执行一次,内层循环执行一周
    for i := 0; i < 24; i++ {

    for j := 0; j < 60; j++ {

    for k := 0; k < 60; k++ {

    fmt.Println(i, j, k)

    time.Sleep(time.Second)

    }
    }
    }

    9*9乘法口诀(break)

    //方法一 
    //外层循环控制行 内层循环控制列
    for i := 1; i <= 9; i++ {
    for j := 1; j <= 9; j++ {
    fmt.Printf("%d*%d=%d ", j, i, j*i)
    if i == j {
     //跳出本次循环
    break
    }
    }
    fmt.Println()
    }
    //方法 2
    for i := 1; i <= 9; i++ {
    for j := 1; j <= i; j++ {
    fmt.Printf("%d*%d=%d ", j, i, j*i)
    }
    fmt.Println()
    }

    注意:
    制表符 (对应英文 ab)

    跳出语句

    案例1:
    i := 0
    for {
    i++
    fmt.Println("hello")
    if i == 10 {
    //跳出循环
    break
    }
    }
    注意:
    break: 跳出循环

    案例2:
    sum := 0
    for i := 0; i < 100; i++ {
    if i%2 == 1 {
    continue //结束本次循环,继续下次循环
    }
    sum += i
    }
    注意:
    continue: 结束本次循环,继续下次循环

    案例3: /* goto 无条件跳转语句 */
    for i := 0; i < 100; i++ {
    fmt.Println("hello")
    if i == 10 {
    goto HEAD //goto可以调到指定位置执行代码
    }
    }
    fmt.Println("world")
    HEAD: //指定代码块
    fmt.Println("hello1111")

    注意:
    goto: 可以调到指定位置执行代码

     

  • 相关阅读:
    Java 之SpringBoot+Vue实现后台管理系统的开发
    保证接口数据安全的10种方式
    连八股文都不懂还指望在前端混下去么
    2020年2月面试题100+大全(合适各级Java人员)
    Java8 Stream源码精讲(一):从一个简单的例子入手
    Java8新特性Lambda表达式
    Java高级面试题及答案
    切片 零值 浅拷贝 泄露 扩容
    @ConfigurationProperties使用及与@Value对比
    JSON中的JSON.parseArray()方法
  • 原文地址:https://www.cnblogs.com/muxinanan/p/14502006.html
Copyright © 2020-2023  润新知