第 7 节:流程控制-循环练习练习-水仙花数-三角形-九九乘法表

6: 循环练习

package main

import "fmt"

func main0601() {

    //敲7 7的倍数 个位为7 十位为7 需要敲桌子  1-100

    for i := 1; i <= 100; i++ {
        if i%7 == 0 || i%10 == 7 || i/10 == 7 {
            fmt.Println("敲桌子")
        } else {
            fmt.Println(i)
        }
    }

}

func main0602() {
    //水仙花数  一个三位数 各个位数的立方和等于这个数本身
    for i := 100; i <= 999; i++ {
        //百位
        a := i / 100
        //十位
        b := i / 10 % 10 //b:=i%100/10
        //个位
        c := i % 10

        if a*a*a + b*b*b + c*c*c == i {
            fmt.Println(i)
        }
    }

}

7: 07循环嵌套

package main

import (
    "fmt"
    "time"
)

func main0701() {
    //代码对齐 ctrl+alt+l
    count := 0
    //外层执行一次 内层执行一周
    for i := 0; i < 5; i++ {
        //fmt.Println(i)
        for j := 0; j < 5; j++ {
            count++
            fmt.Println(i, j)
        }
    }

    fmt.Println(count)
}

//电子时钟
func main0702() {
    //时
    for i := 0; i < 24; i++ {
        //分
        for j := 0; j < 60; j++ {
            //秒
            for k := 0; k < 60; k++ {
                //程序暂停
                time.Sleep(time.Millisecond * 950)
                //fmt.Println(i, j, k)
                fmt.Printf("%d 时 %d 分 %d 秒\n", i, j, k)
            }
        }
    }
}

//func main() {
//  fmt.Println(time.Now())
//  fmt.Println(time.Now().Second())
//  fmt.Println(time.Now().Day())
//  fmt.Println(time.Now().Month())
//  //这一面已经过了240天了
//  fmt.Println(time.Now().YearDay())
//}

func main() {
    //九九乘法口诀
    /*
    1*1=1
    1*2=2 2*2=4
    1*3=3 2*3=6 3*3=9
     */
    // 外层控制行
    for i := 1; i <= 9; i++ {
        //内层控制列
        for j := 1; j <= i; j++ {
            //如果代码满足条件就跳出
            //if j > i {
            //  //跳出语句  可以跳出本层循环
            //  break
            //}
            fmt.Printf("%d*%d=%d\t", j, i, i*j)
        }
        fmt.Println()
    }

}

//打印等腰三角形
//     *
//    ***
//   *****
//  *******
// *********
//***********
本作品采用《CC 协议》,转载必须注明作者和本文链接
嗨,我是波波。曾经创业,有收获也有损失。我积累了丰富教学与编程经验,期待和你互动和进步! 公众号:上海PHP自学中心 付费知识星球:破解面试:程序员的求职导师
讨论数量: 1
wangchunbo

练习题答案:


package main

import "fmt"

//打印等腰三角形
//     *        5 6-i-1     1 i*2+1
//    ***       4 6-i-1     3 i*2+1
//   *****      3 6-i-1     5 i*2+1
//  *******     2 6-i-1     7 i*2+1
// *********    1 6-i-1     9 i*2+1
//***********   0 6-i-1     11 i*2+1
func main() {

    //行数
    l := 6

    //整体执行次数
    for i := 0; i < l; i++ {
        //控制空格个数
        for j := 0; j < l-i-1; j++ {
            fmt.Print(" ")
        }
        //控制星星个数
        for k := 0; k < i*2+1; k++ {
            fmt.Print("*")
        }
        fmt.Println()
    }

}
4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
司机 @ 欣昊玉
文章
273
粉丝
339
喜欢
557
收藏
1104
排名:64
访问:12.2 万
私信
所有博文
社区赞助商