用 Go 语言写的一个斐波那契数列的代码,并添加注释
时间: 2023-02-20 09:54:35 浏览: 53
下面是一份用 Go 语言实现的斐波那契数列代码,并附有注释:
```
package main
import "fmt"
// fibonacci 函数通过递归的方式计算斐波那契数列
func fibonacci(n int) int {
if n <= 1 {
return n
}
return fibonacci(n-1) + fibonacci(n-2)
}
func main() {
var n int
fmt.Print("请输入要求的斐波那契数列数量: ")
fmt.Scanf("%d", &n)
// 循环打印斐波那契数列的第 n 个数
for i := 0; i < n; i++ {
fmt.Printf("%d ", fibonacci(i))
}
}
```
在上面的代码中:
- `fibonacci` 函数是递归函数,它通过递归的方式计算斐波那契数列。
- `main` 函数是程序的入口,它读入用户输入的数字 `n`,并循环调用 `fibonacci` 函数打印斐波那契数列的第 `n` 个数。
相关问题
go语言写一个斐波那契数列
下面是使用Go语言实现斐波那契数列的两种方法:
方法一:使用递归
```go
func fibonacci(n int) int {
if n <= 1 {
return n
}
return fibonacci(n-1) + fibonacci(n-2)
}
```
方法二:使用循环
```go
func fibonacci(n int) int {
if n <= 1 {
return n
}
var a, b, c int = 0, 1, 0
for i := 2; i <= n; i++ {
c = a + b
a = b
b = c
}
return c
}
```
以上两种方法都可以实现斐波那契数列,第一种方法使用递归,代码简单易懂,但是当n比较大时,递归会导致性能下降;第二种方法使用循环,性能较好,但是代码相对复杂一些。
使用go语言写一个斐波那契数列
我可以用Go语言编写一个斐波那契数列,它看起来像这样:package mainimport "fmt"func main() { var a int = 0 var b int = 1 var c int for i := 0; i < 10; i++ { fmt.Println(a) c = a + b a = b b = c } }