学习完C之后,就开始学习数据结构,才发现我对C理解的是那么的浅,相当的浅。对于单链表的操作也是一塌糊涂,所以我打算从线性表的顺序存储结构开始,一步一步用C来实现。借鉴牛人写的,来变成自己的。

线性表的顺序存储结构可以说是最简单的。它其实就是在内存中开辟一段连续的地址空间。以下是一个例子:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define MAXSIZE 20
typedef int Elemtype;  //数据类型,这里假设只有一种
typedef struct sxb_t
{
    Elemtype data[MAXSIZE];
    int length;
}hello;

/*初始化顺序表*/
hello init_sxb()
{
    hello L;  
    L.length = 0;
    return L;
}

/*操作顺序表*/
hello Create(hello L)
{
    int i;
    srand((unsigned)time(NULL));
    for(i = 0;i < L.length;i++)
    {
        L.data[i] = rand()%100;
        L.length++;
    }
    return L;
}

int main(void)
{
    hello list;
    list = init_sxb();
    list = Create(list);
    
    int i;
    for(i = 0;i < list.length;i++)
    {
        printf("%d ",list.data[i]);
    }
    
    
}