数据结构与算法分析-3.1

来源:互联网 发布:上海数据交易中心面试 编辑:程序博客网 时间:2024/05/20 02:52

打印一个单列表的所有元素


查了CSDN中其他人关于这题的思路,加上自己的理解,现在是自己的代码。

首先,声明一个结构体。我属于初学者,开始很难懂结构体里还会有一个结构体,只知道是嵌套要用。在这题里,我很能理解这个要求了。因为curr->next与head后面要赋值,也只有curr的next为结构体才能这样,而且还非要是指针才能运行成功,关于malloc的使用,getchar的用法,自己一一试下会发现它们自己的用处。

#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
//#include <

struct list_test
{
    int val;
    struct list_test *next;
};
typedef struct list_test element;

void main ()
{
    int i;
    element *curr,*head;
    head = NULL;
    for(i = 1;i <= 10;i++)
    {
        curr = (element*)malloc(sizeof(element));
        curr->val = i;
        curr->next = head;
        head = curr;
    }
    curr = head;

    while(curr)
    {
        printf("%d\n",curr->val);
        curr = curr->next;
    }
    getchar();
}