题目内容:输入若干个正整数(输入-1为结束标志),要求按输入数据的逆序建立单链表并输出。 输入格式:一行内输入若干个正整数,之间用空格隔开,并以-1结束。 输出格式:一行内输出建立的单链表数据结果,之间用两个分隔符 -- 隔开,结束标志-1不输出。 输入样例:2 4 6 8 10 -1 输出样例:--2--4--6--8--10...
程序功能:逆序建立链表,顺序输出 */#include<stdio.h>#include<malloc.h>#defineLEN sizeof(struct once)structonce//建立结构{inta;structonce* next; };structonce*out()//建立头插法逆序建立链表{intn =0;structonce* p1, * p2; printf("请输入:"); p1 = p2 = (structonce*)malloc(LEN); scanf_...
scanf("%d",&n);if(n!=-1)a[k++]=n;}while(n!=-1);//输出若干个数,以-1结束 for(int i=0;i<k;i++){//前插建表 q=(struct st*)malloc(sizeof(struct st));q->data=a[i];q->next=head->next;head->next=q;} return head;//返回头结点地址 } void input(struct s...
int data;struct list *next;};int main(){ int i;struct list *p, *head, *q;head = (struct list*) malloc(sizeof(struct list));head->next = NULL;while (scanf("%d", &i), i!=-1) { p = (struct list*)malloc(sizeof(struct list));p->data = i;p->next = head->...
C语言链表:输入若干个正整数(输入-1为结束标志),要求按输入数据的逆序建立一个链表并输出 这直接点明了链表操作的核心——顺序,链表的算法主要难在顺序上。逆序操作中,要将一个指针指向前一个节点,中间必然断开,这就需要两个指针指向断开处的一前一后。上面两个程序都是这样,不同在于指针移动的位置。