C 实战练习题目73

题目:反向输出一个链表。

程序分析:无。

实例:

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<malloc.h>
 4 typedef struct LNode{
 5     int          data;
 6     struct LNode *next;
 7 }LNode,*LinkList;
 8  
 9 LinkList CreateList(int n);
10 void print(LinkList h);
11 int main()
12 {
13     LinkList Head=NULL;
14     int n;
15     
16     scanf("%d",&n);
17     Head=CreateList(n);
18     
19     printf("刚刚建立的各个链表元素的值为:\n");
20     print(Head);
21     
22     printf("\n\n");
23     system("pause");
24     return 0;
25 }
26 LinkList CreateList(int n)
27 {
28     LinkList L,p,q;
29     int i;
30     L=(LNode*)malloc(sizeof(LNode));
31     if(!L)return 0;
32     L->next=NULL;
33     q=L;
34     for(i=1;i<=n;i++)
35     {
36         p=(LinkList)malloc(sizeof(LNode));
37         printf("请输入第%d个元素的值:",i);
38         scanf("%d",&(p->data));
39         p->next=NULL;
40         q->next=p;
41         q=p;
42     }
43     return L;
44 }
45 void print(LinkList h)
46 {
47     LinkList p=h->next;
48     while(p!=NULL){
49         printf("%d ",p->data);
50         p=p->next;
51     }
52 }

感谢你的阅读,请用心感悟!希望可以帮到爱学习的你!!分享也是一种快乐!!!请接力。。。

点击查看原文,谢谢!

posted @ 2020-07-14 11:48  C语言自学网  阅读(174)  评论(0编辑  收藏  举报