C语⾔创建顺序表并插⼊元素详细注释
顺序表是⽤⼀组地址连续的存储单元依次存储数据元素的数据结构。顺序表是线性表的⼀种,线性表是最常⽤且最简单的⼀种数据结构,⼀个线性表是 n 个数据元素的有限序列。我们使⽤ c 语⾔来创建顺序表并插⼊元素。
IDE : Code::Blocks 17.12
Compiler : GNU GCC Compiler
/*创建顺序表并插⼊元素*/
#include <stdio.h>
#include <stdlib.h>
#define Listsize 100 //顺序表可容纳最⼤值
//声明顺序表
typedef struct sqlist{
int data[Listsize]; //存储顺序表中的元素
c语言listinsert函数int length; //顺序表中含有的元素个数
};
//在顺序表中插⼊元素
void InsertList(struct sqlist * list,int t,int i){ //插⼊位置为i,插⼊值为t
int j;
if(i<0 || i>list->length){ //插⼊位置不合法
printf("位置错误!");
exit(1);
}
if(list->length>=Listsize){ //超出顺序表范围,溢出
printf("溢出");
exit(1);
}
for(j=list->length-1;j>=i;--j){ //腾出位置i以供插⼊数据t
list->data[j+1]=list->data[j];
}
list->data[i]=t; //在位置i插⼊数据t
list->length++; //顺序表长度加1
}
int main()
{
struct sqlist * sq; //创建顺序表sq
int i,n,t;
sq=(struct sqlist *)malloc(sizeof(struct sqlist)); //分配空间
sq->length=0; //初始化顺序表长度为0
printf("输⼊顺序表的⼤⼩:");
scanf("%d",&n);
printf("请输⼊顺序表的元素:\n"); //在顺序表中插⼊n个元素
for(i=0;i<n;++i){
scanf("%d",&t);
InsertList(sq,t,i); //插⼊位置为i,值为t
}
printf("这个链表现在是:\n");
for(i=0;i<sq->length;++i){ //输出顺序表的内容
printf("%d ",sq->data[i]);
}
return 0;
}
------不⽐别⼈聪明,就⽐别⼈更加努⼒------
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论