Write a function that returns the number of permutations of the n objects taken k at a time.

The function is int permute(int n; int k).

Example:

Consider the set of digits 1,2,3, the different permutations of two digits are 1,2,2,1,1,3,2,3,3,2.

Function makes use of: n!/(n-k)!

I think I have to make a for loop to compute n! and then I'm guessing another for loop for (n-k)! and then divide these two.

The code that I have so far is:
Code:
int permute(int n; int k)
{
int factn;
int factk;

if(n == 0) 
{
factn = 1;
}
else
{
factn = n * permute(n - 1);
factk = k * permute(k – 1);
}
return permute(factn / factk);
}
I'm not sure if this code is correct though or if there is an easier way to do it. Please help me out.