26 Go 循环语句for循环
2022/6/28 6:22:20
本文主要是介绍26 Go 循环语句for循环,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
golang的for循环有三种方式1 // 常规for循环的三种使用方式 2 // 方式一 3 for a := 1; a <=10; a++ { 4 fmt.Println(a) 5 } 6 7 // 方式二 8 var b uint8 = 0 9 for b < 10 { 10 fmt.Println(b) 11 b++ 12 } 13 14 // 方式三 15 var c uint8 = 0 16 for { 17 if c < 10 { 18 fmt.Println(c) 19 } else { 20 break 21 } 22 c++ 23 }
for-range
语句为
for 下标变量index, 每行内容row := range 目标待循环变量 {
// 下标值 index
// 每行内容变量row
}
1 // for-range循环的使用 2 // 当循环一个字符串时,常规for循环只能循环字串的字节,如下 3 str := "hello,你好" 4 for i := 0; i < len(str); i++ { 5 fmt.Printf("%d - %c \n", i, str[i]) 6 } 7 // 因为golang为默认为utf8编码,str字串的最后两个中文字各占三个字节,所以被便利循环为6个字节,且为乱码 8 /* 9 0 - h 10 1 - e 11 2 - l 12 3 - l 13 4 - o 14 5 - , 15 6 - ä 16 7 - ½ 17 8 - 18 9 - å 19 10 - ¥ 20 11 - ½ 21 */ 22 23 // 但当使用for-range循环时,效果如下 24 for index, val := range str { 25 fmt.Printf("%d - %c \n", index, val) 26 } 27 // str的长度没变还是12的字节,但是for-range会自动识别三个字节为一个汉字 28 /* 29 0 - h 30 1 - e 31 2 - l 32 3 - l 33 4 - o 34 5 - , 35 6 - 你 36 9 - 好 37 */
练习题
1 // 练习题1 2 // 打印1~100间所有9的倍数的整数个数及他们之和 3 var sum int 4 var total uint8 5 for n := 1; n <= 100; n++ { 6 if n % 9 == 0 { 7 total++ 8 sum += n 9 } 10 } 11 fmt.Printf("1~100之间9的倍数共有 %d 个,他们之和为 %d \n", total, sum) 12 // 1~100之间9的倍数共有 11 个,他们之和为 594
1 // 练习题2 2 // 选定一个整数interge, 输出所有两个整数值之和等于integer的算式 3 // 即,如interge为2,其输出结果如下: 4 // 0+2=2 5 // 1+1=2 6 // 1+0=2 7 var interge int 8 fmt.Printf("请输入一个任意正整数:") 9 fmt.Scanln(&interge) 10 11 for m := 0; m <= interge; m++ { 12 fmt.Printf("%d + %d = %d \n", m, interge - m, interge) 13 } 14 15 /* 16 请输入一个任意正整数:8 17 0 + 8 = 8 18 1 + 7 = 8 19 2 + 6 = 8 20 3 + 5 = 8 21 4 + 4 = 8 22 5 + 3 = 8 23 6 + 2 = 8 24 7 + 1 = 8 25 8 + 0 = 8 26 */
这篇关于26 Go 循环语句for循环的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-24MongoDB资料:新手入门完全指南
- 2024-12-20go-zero 框架的 RPC 服务 启动start和停止 底层是怎么实现的?-icode9专业技术文章分享
- 2024-12-19Go-Zero 框架的 RPC 服务启动和停止的基本机制和过程是怎么实现的?-icode9专业技术文章分享
- 2024-12-18怎么在golang中使用gRPC测试mock数据?-icode9专业技术文章分享
- 2024-12-15掌握PageRank算法核心!你离Google优化高手只差一步!
- 2024-12-15GORM 中的标签 gorm:"index"是什么?-icode9专业技术文章分享
- 2024-12-11怎么在 Go 语言中获取 Open vSwitch (OVS) 的桥接信息(Bridge)?-icode9专业技术文章分享
- 2024-12-11怎么用Go 语言的库来与 Open vSwitch 进行交互?-icode9专业技术文章分享
- 2024-12-11怎么在 go-zero 项目中发送阿里云短信?-icode9专业技术文章分享
- 2024-12-11怎么使用阿里云 Go SDK (alibaba-cloud-sdk-go) 发送短信?-icode9专业技术文章分享