/*页首的跳转连接,*/

go语言--递归求阶乘

package main

import "fmt"

func digui(x int) int {    //定义一个递归函数
	var z int
	if x < 0 {
		fmt.Printf("你输入的数字有误")
	} else if x == 1 || x == 0 {          //给予递归结束(判断 x 的值是否为1,0)---条件成了后将 x 的值 倒回去重新计算
		z = 1                     
	} else {
		z = digui(x-1) * x          //递归--调用自身函数
	}
	return z           
}
func main() {
	var num int
	fmt.Printf("请输入你要求的阶乘数\n")
	fmt.Scanf("%d", &num)
	dg_num := digui(num)                //用一个变量储存递归结果
	fmt.Printf("%d!=%d", num, dg_num)
}

 

//运行结果
请输入你要求的阶乘数 5 5!=120 Process finished with exit code 0

 

本人小白,欢迎各位大佬点评

 

posted @ 2021-03-11 00:18  念言  阅读(219)  评论(0)    收藏  举报
Live2D