• 4.3 Go for


    4.3 Go for

    Go的for循环是一个循环控制结构,可以执行循环次数。

    语法

    package main
    
    import "fmt"
    
    func main() {
        //创建方式一,循环条件是布尔值表达式
        num := 0
        for num <= 10 {
            fmt.Println("我说老男孩golang 你说哟", num)
            num++
        }
    
        //创建方式二,无限循环,go不存在while语法
        num1 := 0
        for {
            if num1 <= 10 {
                fmt.Println("人生苦短 说go就go", num1)
            } else {
                break //超出了就终止这个for循环
            }
            num1++ //等于num1=num1+1
        }
    
        fmt.Println("----------")
        //创建方式三  for-range  用于遍历字符串、数组
        var teacher = "wu pei qi"
        //字符串可以用索引取值,注意格式化输出的时候,要输出码值对应的字符  %c 格式化
        for i := 0; i < len(teacher); i++ {
            fmt.Printf("%c
    ", teacher[i])
        }
        fmt.Println("----------")
    
        //创建方式四
        student := "chaoge牛逼"
        //for range遍历,是按照字符方式遍历,支持中文
        for k, v := range student {
            fmt.Printf("索引:%v 值:%c
    ", k, v)
        }
        fmt.Println("----------")
        //传统遍历字符串是按字节遍历,汉字对应utf8编码是3个字节
        var class1 string = "python全栈开发班"
        //必须转化为[]rune切片类型,方可使用
        class2 := []rune(class1)
        for i := 0; i < len(class2); i++ {
            fmt.Printf("%c
    ", class2[i])
        }
    }
    

    打印乘法表,层数由用户输入

    package main
    
    import "fmt"
    
    func main() {
        var num int
        fmt.Println("请输入层数:")
        fmt.Scanln(&num)
        //i表示层数
        for i := 1; i <= num; i++ {
            //j表示每层打印多少
            for j := 0; j <= i; j++ {
                fmt.Printf("%v * %v = %v 	", j, i, j*i)
            }
            fmt.Println()
        }
    }
    

    三次登录

    package main
    
    import "fmt"
    
    func main() {
        var name string
        var pwd string
        var logincache = 3
        //循环限制三次登录
        for i := 1; i <= 3; i++ {
            fmt.Println("请输入账号:")
            fmt.Scanln(&name)
            fmt.Println("请输入密码:")
            fmt.Scanln(&pwd)
            if name == "alex" && pwd == "alex3714" {
                fmt.Println("欢迎鸡汤王归来!!")
                break
            } else {
                logincache-- //每次登录失败减一
                fmt.Printf("你还有%v次机会尝试,老铁
    ", logincache)
            }
        }
    }
    
     
  • 相关阅读:
    SDNU 1219.sign up problem
    SDNU 1232.A*B Problem(高精度)
    Go操作MySQL
    BootStrap jQuery 在线cdn
    Go语言标准库之http/template
    Go语言基础之net/http
    Go语言基础之网络编程
    Go语言基础之单元测试
    Go语言基础之rand(随机数)包
    Go语言基础之并发
  • 原文地址:https://www.cnblogs.com/open-yang/p/11256807.html
Copyright © 2020-2023  润新知