方法一:使用while循环实现

DELIMITER $$ CREATE FUNCTION factorial(n INT) RETURNS INT BEGIN DECLARE result INT DEFAULT 1; WHILE n > 0 DO SET result = result * n; SET n = n - 1; END WHILE; RETURN result; END $$ DELIMITER ;

方法二:使用for循环实现

DELIMITER $$ CREATE FUNCTION factorial(n INT) RETURNS INT BEGIN DECLARE result INT DEFAULT 1; DECLARE i INT DEFAULT 1; FOR i IN 1..n DO SET result = result * i; END FOR; RETURN result; END $$ DELIMITER ;

方法三:使用递归函数实现

DELIMITER $$ CREATE FUNCTION factorial(n INT) RETURNS INT BEGIN IF n = 0 THEN RETURN 1; ELSE RETURN n * factorial(n-1); END IF; END $$ DELIMITER

在MySQL中编写自定义函数求整数n的阶乘用三种循环方法实现

原文地址: https://www.cveoy.top/t/topic/feSO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录