int FactorialSum(List L) {
int res = 0; // 结果初始化
struct Node* x = L; // 从链表的头节点开始
// 遍历链表中的每一个节点
while (x != NULL) {
int data = x->Data; // 当前节点的值
int y = 1; // 用于计算当前节点值的阶乘
// 计算当前节点值的阶乘
for (int j = 1; j <= data; j++) {
y *= j; // 累乘计算阶乘
}
// 将当前节点值的阶乘加到结果中
res += y;
// 移动到下一个节点
x = x->Next;
}
// 返回计算的阶乘之和
return res;
}