#include"stdio.h"
#include <stdlib.h>
struct node{
int data;
struct node *next;
};
void dellink(struct node *h);
struct node * createlink(int k);
int sum(struct node * h);
main()
{
struct node *p,*head=NULL;
int d,s;
scanf("%d",&d);
head=createlink(d); //创建链表
s=sum(head); //求和
printf("%d\n",s);
dellink(head); //删除链表
}
struct node * createlink(int k)
{
struct node *head=NULL,*p,*q;
int i;
for(i=0;i<k;i++) //
{
p=(struct node *)malloc(sizeof(struct node));
scanf("%d",&p->data);
p->next=NULL;
if(head==NULL)
{
head=p;
q=p;
}
else
{
q->next=p;
q=p;
}
}
return head;
}
int sum(struct node *h)
{
int sum = 0;
struct node *p=h;
while (p!=NULL )
{
sum+=p->data;
p = p->next;
}
return sum;
}
void dellink(struct node *h)
{
struct node *q;
while(h!=NULL)
{
q=h;
h=h->next;
free(q);
}
}