參考資訊:
https://www.cnblogs.com/grandyang/p/4650187.html
題目:

解答:
int* productExceptSelf(int* nums, int numsSize, int* returnSize)
{
int r = 0;
int cc = 0;
int *frd = malloc(sizeof(int) * numsSize);
int *bkd = malloc(sizeof(int) * numsSize);
frd[0] = 1;
for (cc = 0; cc < (numsSize - 1); cc++) {
frd[cc + 1] = frd[cc] * nums[cc];
}
bkd[numsSize - 1] = 1;
for (cc = numsSize - 1; cc > 0; cc--) {
bkd[cc - 1] = bkd[cc] * nums[cc];
}
*returnSize = numsSize;
for (cc = 0; cc < numsSize; cc++) {
nums[cc] = frd[cc] * bkd[cc];
}
free(frd);
free(bkd);
return nums;
}