Go语言开发实战课后编程题

这篇博客分享了作者在学习Go语言时所做的课后编程练习,包括输出字符串、打印直角三角形、寻找水仙花数、实现斐波那契数列、递归计算阶乘、构建杨辉三角、字符串对称性判断、字符串替换、日期转星期、结构体与多态等知识点,通过实际案例深入理解Go语言的核心特性。
摘要由CSDN通过智能技术生成

Go语言开发实战课后编程题

自己做的课后习题,不保证完全正确,侵删

第一章

尝试创建一个项目,新建一个程序,输出字符串“我爱Go语言”。

package main

import "fmt"

func main(){
   
    fmt.Println("我爱Go语言")
}

输出结果:
在这里插入图片描述

第三章

打印左上直角三角形

package main

import "fmt"

func main(){
   
    // 读入需要生成多少行的左上直角三角形
    var line int
    fmt.Scanf("%d",&line)

    // 生成左上直角三角形
    for i := 0;i < line;i++{
   
        for j:=0;j < (line - i);j++{
   
            fmt.Printf("*")
        }
        fmt.Println()
    }
}

输出结果:
在这里插入图片描述

编程打印出所有的“水仙花数”。所谓水仙花数,是指一个三位数,其各位数字的立方之和等于该数

package main

import "fmt"

func main(){
   
    var a,b,c int
    for num := 100;num < 1000;num++{
   
        a = num / 100
        b = (num - 100 * a) / 10
        c = num % 10
        if (a * a * a + b * b * b + c * c * c) == num{
   
            fmt.Println(num)
        }
    }
}

输出结果:
在这里插入图片描述

第四章

斐波那契数列是由0和1开始,之后的斐波那契数列系数就由之前的两数相加。在数学上定义为F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2),下面请使用闭包实现斐波那契数列,并输出前10个数

package main

import "fmt"

func fib() func() int {
   
    var f0 int = 0
    var f1 int = 1
    return func() int{
   
        tmp := f0
        f0 = f1
        f1 = f0 + tmp
        return tmp
    }
}

func main(){
   
    myfib := fib()
    for i := 0;i < 10;i++{
   
        fmt.Println(myfib())
    }
}

输出结果:
在这里插入图片描述

递归实现n!

package main

import "fmt"

func factorial(n int) int {
   
    if n == 0{
   
        return 1
    }
    return n * factorial(n - 1)
}


func main(){
   
    var num int
    fmt.Scanf("%d",&num)
    fmt.Printf("%d\n",factorial(num))
}
  • 1
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值