首页 > 其他 > 详细

求单链表结点的阶乘和

时间:2021-07-13 14:54:09      阅读:7      评论:0      收藏:0      [点我收藏+]

本题要求实现一个函数,求单链表L结点的阶乘和。这里默认所有结点的值非负,且题目保证结果在int范围内。

#include <stdio.h>

#include <stdlib.h>

typedef struct Node *PtrToNode;

struct Node

{ int Data; /* 存储结点数据 */

PtrToNode Next; /* 指向下一个结点的指针 */ };

typedef PtrToNode List; /* 定义单链表类型 */

int FactorialSum( List L );

int main()

{ int N, i;

List L, p;

scanf("%d", &N);

L = NULL;

for ( i=0; i<N; i++ )

{ p = (List)malloc(sizeof(struct Node));

scanf("%d", &p->Data);

p->Next = L; L = p; }

printf("%d\n", FactorialSum(L));

return 0; }

int FactorialSum( List L )
{
int sum=0,maxdata;
while(L!=NULL)
{
maxdata=1;
for(int i=1;i<=L->Data;i++)
{
maxdata=maxdata*i;
}
sum=maxdata+sum;
L=L->Next;
}
return sum;
}

技术分享图片

 

求单链表结点的阶乘和

原文:https://www.cnblogs.com/2313942750qq/p/15006023.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!