阅读下列程序说明和C程序,已知其输出为“1 2 3 4 5 6 7 8 9 10”。将应填入(n)处的字句写在对应栏内

题目内容(请给出正确答案)

阅读下列程序说明和C程序,已知其输出为“1 2 3 4 5 6 7 8 9 10”。将应填入(n)处的字句写在对应栏内。

[说明]

本程序包含的函数及其功能说明如下:

(1)函数first_insert()的功能是在已知链表的首表元之前插入一个指定值的表元;

(2)函数reverse_copy()的功能是按已知链表复制出一个新链表,但新链表的表元链接顺序与

已知链表的表元链接顺序相反;

(3)函数Print_link()用来输出链表中各表元的值;

(4)函数free_link()用来释放链表全部表元空间。

[程序]

include <stdio. h >

include <malloe. h >

typodef struct node {

int val;

struct node * next;

} NODE;

void first_insert(NODE * * p,int v)

{ NODE *q = (NODE *) malloe(sizeof(NODE));

q->val = v; q->next = *p; /* 为新表元赋值*/

* p =(1); }

NODE * reverse_copy( NODE * p)

{ NODE * u;

for(u=NULL; p!=NULL; p=p->next) first_insert((2));

return u;

}

void printlink(NODE * p )

{ for(;(3)) prinff("%d\t", p->val);

printf(" \n");

}

void free_link( NODE * p)

{ NODE * u;

while(p! =NULL) { u=p->next;free(p);(4); }

void main( ) { NODE * link1 , * link2;

int i;

link1 = NULL;

for(i=1; i<= 10; i+ + )first_insert(&linkl, i);

link2 = reverse_copy(link1 );

(5);

free_link( linkl ) ;free_link(link2); }

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
更多相关问题