我正在尝试在C中重新编写这个bash函数,但有点不确定如何将此函数转换为C循环。转换一个Bash函数来计算n!到C?
这里我有变量集。这我已经有
n=10
r=4
这是我如何重新写这个有点失落。这似乎是用自己的函数调用函数,我非常确定C不会这么做(至少安全),而且它不需要是一个函数,我只需要插入相同的变量,并让它来与同样的结果出来。
factorial() {
if (($1)); then
echo $(($1 * $(factorial $(($1-1)))))
else
echo 1
fi
}
最后一点,在C中表达下面代码的最佳方式是什么? bash中的包围会继续吗?
result=$(($(factorial $n)/($(factorial $r)*$(factorial $(($n-$r))))))
阶乘工作在标准整数类型的这么少输入整数的范围,我会只是做一个查找表,而不是计算循环。无论如何,你必须检查用户输入是否在界限内。 – 2013-02-09 10:30:49