数据结构实验之链表二:逆序建立链表

数据结构实验之链表二:逆序建立链表

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

输入整数个数N,再输入N个整数,按照这些整数输入的相反顺序建立单链表,并依次遍历输出单链表的数据。

Input

第一行输入整数N;;
第二行依次输入N个整数,逆序建立单链表。

Output

依次输出单链表所存放的数据。

Sample Input

10
11 3 5 27 9 12 43 16 84 22 

Sample Output

22 84 16 43 12 9 27 5 3 11 

Hint

不能使用数组!

Source

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 struct node
 4 {
 5     int data ;
 6     struct node*next;
 7 };
 8 int main()
 9 {
10     int n,i;
11     struct node *head,*p;
12     head =(struct node*)malloc(sizeof(struct node));
13     head->next=NULL;
14     scanf("%d",&n);
15     for(i=0; i<n; i++)
16     {
17         p=(struct node*)malloc(sizeof (struct node));
18         scanf("%d",&p->data);
19         p->next =head->next;
20         head->next=p;
21     }
22     for(p=head->next ; p!=NULL; p=p->next)
23     {
24         if(p->next==NULL)
25             printf("%d
",p->data);
26         else
27             printf("%d ",p->data);
28     }
29     return 0;
30 }
原文地址:https://www.cnblogs.com/xiaolitongxueyaoshangjin/p/12063579.html