学习完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]);
}
}
完
转载于:https://blog.51cto.com/8299474/1586809