下列给定程序是建立一个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。 ”/********found*****/”之后所指的语句有错,请选择下列正确的语句替换。 #include #include #include typedef struct aa { int data; struct aa *next; } NODE; int fun (NODE *h) { int sum=0; NODE *p; p=h->next; while (p!=NULL) { if(p->data%2==0) sum+=p->data; /*************found**************/ p=h->next; } return sum; } NODE *creatlink(int n) { NODE *h,*p,*s; int i; h=p=(NODE*)malloc(sizeof(NODE)); for(i=1;i { s=(NODE*)malloc(sizeof(NODE)); s->data=rand()%16; s->next=p->next; p->next=s; p=p->next; } p->next=NULL; return h; } outlink(NODE *h) { NODE *p; p=h->next; printf("\n\n The LIST :\n\n HEAD"); while(p) { printf("->%d",p->data); p=p->next;} printf("\n"); } void main() { NODE *head; int sum; system("CLS"); head=creatlink(10); outlink(head); sum=fun(head); printf("\nSUM=%d",sum); }