您的位置:首页 > 理论基础 > 数据结构算法

数据结构实验之链表一:顺序建立链表

2016-07-24 09:18 435 查看
好久都没有写博客了,这次做一个简单的链表题,找找感觉。


题目描述

输入N个整数,按照输入的顺序建立单链表存储,并遍历所建立的单链表,输出这些数据。


输入

第一行输入整数的个数N;

第二行依次输入每个整数。


输出

输出这组整数。


示例输入

8
12 56 4 6 55 15 33 62



示例输出

12 56 4 6 55 15 33 62



提示

不得使用数组!

现在写的代码与以前写的并没有太大的提升,只有几处细微的改动

#include<stdio.h>

#include<stdlib.h>

//定义链表

struct node

{

int data;

struct node *next;

};

int main()

{

    //定义指针

    struct node *p,*tail,*head;

    int i,n;

    //建立头结点

    head=(struct node *)malloc(sizeof(struct node));

    head->next=NULL;

    tail=head;

    //循环输入

    scanf("%d",&n);

    for(i=0;i<n;i++)

    {

        p=(struct node *)malloc(sizeof(struct node));

        scanf("%d",&p->data);

        tail->next=p;

        tail=p;

    }

    //结尾处为NULL

    p->next=NULL;

    //输出

    p=head->next;

    while(p!=NULL)

    {

        printf("%d",p->data);

        if(p->next!=NULL)

            printf(" ");

        else

            printf("\n");

        p=p->next;

    }

    return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: