您的位置:首页 > 其它

逆序建立链表

2018-01-20 14:29 204 查看


Problem Description

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


Input

第一行输入整数N;;

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


Output

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


Example Input

10
11 3 5 27 9 12 43 16 84 22



Example Output

22 84 16 43 12 9 27 5 3 11


01
#include<stdio.h>
02
#include<stdlib.h>
03
struct
node
04
{
05
int
date;
06
struct
node
* next;
07
}
*head, *p;
08
int
main()
09
{
10
int
n,
i;
11
scanf
(
"%d"
,
&n);
12
head
= (
struct
node
*)
malloc
(
sizeof
(
struct
node));
13
head
-> next = NULL;
14
for
(i
= 1; i <= n; i++)
15
{
16
p
= (
struct
node
*)
malloc
(
sizeof
(
struct
node));
17
scanf
(
"%d"
,
&p -> date);
18
p
-> next = head -> next;
19
head
-> next = p;
20
}
21
p
= head -> next;
22
while
(p
!= NULL)
23
{
24
printf
(
"%d"
,
p -> date);
25
if
(p
-> next != NULL)
26
{
27
printf
(
"
"
);
28
}
29
else
30
{
31
printf
(
"\n"
);
32
}
33
p
= p -> next;
34
}
35
return
0;
36
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: