开发者学堂课程【Go 语言核心编程 - 基础语法、数组、切片、Map: for 循环课堂练习】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/625/detail/9577
for 循环课堂练习
内容介绍
一、习题1
二、习题2
一、习题1
打印 1~100 之间所有是 9 的倍数的整数的个数及总和
代码如下:
package main
import “fmt”
func main(){
//打印 1-100 之间所有是 9 的倍数的整数的个数及总和
//分析思路
//(1).使用 for 循环对 max 进行遍历
//(2).当一个数 %9 == 0 就是 9 的倍数
//(3).而要求个数和总和就需要声明两个变量 count 和 sum 来分别保存个数和总数
var main uint64 = 100
var count uint64 = 0
//定义变量 count 初始化为 0
var sum uint64 = 0
//变量 sum 初始化为 0,如果数值很大则定义数据类型为 int64 ,具有很好的扩展性,如果不够大还可以定义为 uint64。
var i uint64 = 1
// i 从 1 开始便利
for ;i <=max;i++{
//因为 i 是 int 类型,max 是 uint64 类型,两个类型不匹配则会报错,所以要把 i 定义在 for 循环外,转化类型为 uint64。
if i %9 ==0{
//如果 i 除以 9 取余值为 0,则说明 i 是 9 的倍数。
count++
//执行 count++
sum +=i
//再 sum 自身加 i
}
}
fmt.Printf(“count=%v,sum=%v\n”,count,sum)
//输出结果。
}
运行结果:
D:\goproject\src\go_code\chapter05\fordemo>go run main .go
count=11 sum=594
二、习题2
完成下面的表达式输出
0+6=6
1+5=6
2+4=6
3+3=6
4+2=6
5+1=6
6+0=6
也就是说把两个数相加等于 6 的组合打印出来,要求使用 for 循环输出,所以 6 是可变的为变量,可以是任何数值。
代码如下:
…
fmt.Println(“-----------”)
//与之前的代码分隔开。
//完成下面的表达式的输出,6 是可变的
var n int = 6
//定义变量 n,赋值为 6,这里也可以把 int 改为更大 uint64。
for i := 0; i <= n; i++{
// for 循环从 0 开始,
fmt.Printf(“%v +%v =%v \n”,i,n,-i,n)
//输出第一个值 i 加上第二个值 n-i,等于的和为 n,因为表达式始终为 6,所以和就是 n。为了输出简洁加上换行 \n。
}
运行结果:
D:\goproject\src\go_code\chapter05\fordemo>go run main .go
count=11 sum=594
-----------
0+6=6
1+5=6
2+4=6
3+3=6
4+2=6
5+1=6
6+0=6
结果如上说明运行成功。如过要输出其他数值,只需要改 n 的值 即可,如改n int=6 为 n int=60,运行结果如下:
D:\goproject\src\go_code\chapter05\fordemo>go run main .go
count=11 sum=594
-----------
0+60=60
…
60+0=60
以上代码比较简单,可以重复练习多遍,加深记忆。