c语言求排列组合函数