精华内容
下载资源
问答
  • #include #include #include #include #define LIST_INIT_SIZE 100#define LISTINCREMENT 10#define OK 1#define ERROR -1#define OVERFLOW -1#define ENDFLAG 0typedef int Status;typedef int ElemType;...

    #include

    #include

    #include

    #include

    #define LIST_INIT_SIZE 100

    #define LISTINCREMENT 10

    #define OK 1

    #define ERROR -1

    #define OVERFLOW -1

    #define ENDFLAG 0

    typedef int Status;

    typedef int ElemType;

    #define OUTFORMAT "%d "

    #define INFORMAT "%d"

    typedef struct{

    ElemType *elem;

    int length;

    int listsize;

    }SqList;

    Status InitList(SqList *L){

    L->elem=(ElemType *)malloc(LIST_INIT_SIZE*sizeof(ElemType));

    if(!L->elem) // 如果没有分配成功

    exit(OVERFLOW); /退出,显示()内内容

    L->length=0;

    L->listsize=LIST_INIT_SIZE;

    return OK;

    }

    Status Inputdata(SqList *L){ ///SqList *L定义首节点的地址

    ElemType temp,*newbase;

    printf("\nInput the data of the sequencial list:\nNote:0 is the ending flag:\n");

    scanf(INFORMAT,&temp);

    while(temp!=ENDFLAG){

    if(L->length>=L->listsize){

    newbase=(ElemType *)realloc(L->elem,

    (L->listsize+LISTINCREMENT)*sizeof(ElemType));扩

    大空间,把旧的地址拷贝到新空间

    if(!newbase)

    exit(OVERFLOW);

    L->elem=newbase;

    L->listsize+=LISTINCREMENT;

    }

    L->elem[L->length++]=temp;

    scanf(INFORMAT,&temp);

    }

    return OK;

    }

    Status ListInsert(SqList *L,int i,ElemType e){

    ElemType *p,*q,*newbase;

    if(i<0||i>L->length)

    return ERROR;

    if(L->length>=L->listsize)

    {

    Newbase =( elemType*)realloc(L->elem,

    (L->listsize+LISTINCREMENT)*sizeof(ElemType));

    if(!newbase) exit(OVERFLOW);

    L->elem=newbase;

    L->listsize+=LISTINCREMENT;

    }

    q=&(L->elem[i-1]);

    for(p=&(L->elem[L->length-1]);p>=q;--p)

    *(p+1)=*p;

    *q=e;

    ++L->length;

    return OK;

    }

    void MyDisplay(SqList L){

    int i;

    for(i=0;i

    printf(OUTFORMAT,L.elem[i]);

    printf("\n");

    }

    void main(void){

    SqList L;

    ElemType temp;

    int i;

    if(!InitList(&L)) { 如果初始化失败

    printf("To initialize the sequencial list fail\n");

    getch(); //如果失败,按任意键退出

    exit(0);

    }

    if(!Inputdata(&L)){

    printf("To input the data of the sequencial li

    展开全文
  • 实验二报告一、实验目的1、 掌握线性表的链式存储结构的表示和实现方法。2、 掌握链表基本操作的算法实现。二、实验内容1、 建立单向链表,并在单链表上实现插入、删除和查找操作(验证性内容)。2、 建立双向链表,并...

    实验二报告

    一、实验目的

    1、 掌握线性表的链式存储结构的表示和实现方法。

    2、 掌握链表基本操作的算法实现。

    二、实验内容

    1、 建立单向链表,并在单链表上实现插入、删除和查找操作(验证性内容)。

    2、 建立双向链表,并在双向链表上实现插入、删除和查找操作(设计性内容)。

    3、 计算已知一个单链表中数据域值为一个指定值x的结点个数(应用性设计内容)。

    三、知识准备

    前期要求熟练掌握了C语言的编程规则、方法和单链表和双向链表的基本操作算法。

    四、验证性试验

    试验要求

    编程实现如下功能:

    (1)根据输入的一系列整数,以0标志结束,用头插法建立单链表,并输出单链表中各元素值,观察输入的内容与输出的内容是否一致。

    (2)在单链表的第i个元素之前插入一个值为x的元素,并输出插入后的单链表中各元素值。

    (3)删除单链表中第i个元素,并输出删除后的单链表中各元素值。

    (4)在单链表中查找第i个元素,如果查找成功,则显示该元素的值,否则显示该元素不存在。

    五、设计性试验

    编程实现在双向循环链表上的插入和删除操作

    实验要求

    (1)输入链表的长度和各元素的值,用尾插法建立双向循环 链表,并输出链表中各元素值,观察输入的内容与输出的内容是否一致。

    (2)在双向循环链表的第i个元素之前插入一个值为x的元素,并输出插入后的链表中各元素值。

    (3)删除双向循环链表中第i个元素,并输出删除后的链表中各元素值。

    (4)在双向循环链表中查找值为x元素,如果查找成功,则显示该元素在链表中的位置,否则显示该元素不存在。

    六、应用性设计实验

    编写一个程序,计算出一个单链表中数据域值为一个指定值x的结点个数。 实验要求:

    (1)从键盘输入若干个整数,以此序列为顺序建立一个不带头结点的单向链表;

    (2)输出此单链表中d的各个数据元素值;

    (3)给定一个x的具体整数值,计算并返回此单链表中数据域值为x的结点个数值。 程序代码:

    一、验证性实验:

    #include

    #include

    typedef struct LNode{

    int data;

    struct LNode *next;

    展开全文
  • 严蔚敏数据结构C语言版 线性表的增删改查功能(完全自己敲的) /* 严蔚敏数据结构C语言版 顺序线性表的综合程序(增删改查) */ //头文件 #include<stdio.h> #include<malloc.h> #include<stdlib.h&...

    严蔚敏数据结构C语言版 线性表的增删改查功能(完全自己敲的)

    /*
    严蔚敏数据结构C语言版
    顺序线性表的综合程序(增删改查)
    */
    
    //头文件
    #include<stdio.h>
    #include<malloc.h>
    #include<stdlib.h>
    
    //宏区
    #define List_capacity 100						//线性表L的初始容量
    #define List_appreciation 10					//线性表L的初始容量不足时分配的增量
    
    //结构
    typedef struct									//结构
    {
    	int *elem;									//用于指向动态连续分配的存储空间的首地址
    	int length;									//当前线性表L的长度
    	int list_size;								//当前线性表L的存储容量
    }Sqlist;
    
    //函数区
    void List_initialize(Sqlist *L)											//线性表L的初始化
    {
    	L->elem = (int *)malloc(List_capacity * sizeof(int));				//分配了一段List_capacity动态连续存储的空间并把首地址发送给L->elem
    	if (!L->elem)
    	{
    		printf("初始化分配失败,检查程序!\n");							//输出信息,出问题时候方便查找问题所在地
    		exit(1);														//非正常退出程序,终止程序
    	}
    	else
    		printf("初始化成功,请继续下一步操作:\n");
    
    	L->length = 0;														//未赋值,线性表L的初始化长度为0
    	L->list_size = List_capacity;										//记录已经为线性表L分配了List_capacity长度的存储容量												
    }
    
    void List_The_default_value(Sqlist *L)									//线性表L的默认赋值
    {
    	int i, j;
    
    	L->elem[0] = NULL;													//初始化线性表L的下标为0的元素为0
    	for (i = 1;i <= 10;i++)												//从1开始依次赋值给线性表L的每个元素,到10为止
    	{
    		L->elem[i] = i;													//将i值赋于将下标为i的元素
    		L->length++;													//每赋值一个数将线性表L的长度自增一次
    
    		if (L->length > L->list_size)														//如果线性表L的当前长度大于了线性表L的容量
    		{
    			int * new1;
    
    			new1 = (int *)realloc(L->elem, (L->length + List_appreciation) * sizeof(int));	//重新分配L->elem的存储空间并临时用new1指向
    			if (!new1)																		//如果分配失败
    			{
    				printf("赋值时容量不够,进行增值分配但分配失败请检查程序!\n");				//显示错误,用于方便查找位置
    				exit(1);																	//非正常退出程序,终止程序
    			}
    
    			L->elem = new1;																	//将new1内的地址发送给L->elem使线性表L指向新分配的空间
    			L->list_size = L->length + List_appreciation;									//记录容量
    		}
    	}
    
    	printf("当前线性表L的元素值为:");									//用于提示用户线性表L内的值
    	for (j = 1;j <= L->length;j++)										//依次输出线性表L的值
    		printf("%d ", L->elem[j]);
    	printf("\n赋值成功请进行下一步操作:\n\n\n");						//赋值成功
    }
    
    void List_insert(Sqlist *L)												//线性表的插入(增)
    {
    	int i, j, e, k;
    
    	/*													//这个判断有问题,暂时不清楚!!!!!!!
    	char val;
    	printf("是否需要增添值?(Y/N):");				//判断用户是否需要添加新值
    	scanf("%c", &val);
    	if (val == 'N' || val == 'n')						//如果是'Y'或'y'即继续执行,若是'N'或'n'则返回主函数
    	return 0;
    
    	printf("\n");
    	*/
    
    	printf("请输入你要插入的位置:");
    	scanf("%d", &i);													//输入插入的位置
    	printf("请输入你要插入的值为:");
    	scanf("%d", &j);													//输入插入的值
    
    	while (i < 1 || i > L->length)										//插入的值不合法,就重新输入
    	{
    		printf("你输入的值不合法,请重新输入:\n");
    		printf("请输入你要插入的位置:");
    		scanf("%d", &i);
    	}
    
    	if (L->length >= L->list_size)														//如果线性表L的当前长度大于了线性表L的容量
    	{
    		int * new1;
    
    		new1 = (int *)realloc(L->elem, (L->length + List_appreciation) * sizeof(int));	//重新分配L->elem的存储空间并临时用new1指向
    		if (!new1)																		//如果分配失败
    		{
    			printf("赋值时容量不够,进行增值分配但分配失败请检查程序!\n");				//显示错误,用于方便查找位置
    			exit(1);																	//非正常退出程序,终止程序
    		}
    
    		L->elem = new1;																	//将new1内的地址发送给L->elem使线性表L指向新分配的空间
    		L->list_size = L->length + List_appreciation;									//记录容量
    
    		printf("\n本次插入,已经超过了原有存储容量,现已增加容量\n");					//提示用户增值的操作
    	}
    
    	for (e = L->length;i <= e;e--)										//从线性表L最后一个元素开始依次往后移动,直到i的位置空出来
    		L->elem[e + 1] = L->elem[e];									//将线性表L的最后一个元素向后移动
    
    	L->elem[i] = j;														//将需要插入的值j插入到指定位置i
    	L->length++;														//记录长度
    
    	printf("插入成功,线性表内的元素为:");
    
    	for (k = 1;k <= L->length;k++)										//依次打印插值后的线性表L的各个元素
    		printf("%d ", L->elem[k]);										//打印
    	printf("\n");
    }
    
    void List_drop(Sqlist *L)	 											//线性表的删除(删除)
    {
    	int i = 0, j, t, k;
    
    	/*													//这个判断有问题,暂时不清楚!!!!!!!
    	char val;
    	printf("是否需要删除值?(Y/N):");				//判断用户是否需要添加新值
    	scanf("%c", &val);
    	if (val == 'N' || val == 'n')						//如果是'Y'或'y'即继续执行,若是'N'或'n'则返回主函数
    	return 0;
    
    	printf("\n");
    	*/
    
    	printf("请输入你要删除的值:");
    	scanf("%d", &j);
    
    	printf("删除成功,你删除的值是:%d\n", L->elem[j]);
    
    	for (;i <= L->length;i++)
    		if (L->elem[i] == j)
    		{
    			L->elem[i] = NULL;
    			k = i;
    		}
    	for (;k <= L->length;k++)											//将删除的位置的下一位依次往前移动
    		L->elem[k] = L->elem[k + 1];
    	L->length--;														//记录当前线性表的长度
    
    	printf("删除后的线性表的值为:");
    	for (t = 1;t <= L->length;t++)										//依次输出删除后线性表L的各个元素
    		printf("%d ", L->elem[t]);
    	printf("\n");
    }
    
    void List_change(Sqlist *L)												//线性表的更改(改)
    {
    	int i = 0, j, t, m;
    
    	/*														//这个判断有问题,暂时不清楚!!!!!!!
    	char val;
    	printf("是否需要更改值?(Y/N):");					//判断用户是否需要添加新值
    	scanf("%c", &val);
    	if (val == 'N' || val == 'n')							//如果是'Y'或'y'即继续执行,若是'N'或'n'则返回主函数
    	return 0;
    
    	printf("\n");
    	*/
    
    	printf("输入更改的位置:");
    	scanf("%d", &j);												//输入要改的值
    	printf("输入要更改成的值:");
    	scanf("%d", &t);												//输入要改的位置
    
    	while (j < 0 && j > L->length)									//判断改的位置是否有误
    	{
    		printf("改的位置有误,请重新输入改的位置:");
    		scanf("%d", &j);
    	}
    
    	L->elem[j] = t;													//将需要改的位置上的元素改为j
    
    	for (m = 1;m <= L->length;m++)									//打印输出
    		printf("%d ", L->elem[m]);
    	printf("\n");
    }
    
    void List_examine(Sqlist *L)										//线性表的查找(查)
    {
    	int i, j;
    
    	/*													//这个判断有问题,暂时不清楚!!!!!!!
    	char val;
    	printf("是否需要增添值?(Y/N):");				//判断用户是否需要添加新值
    	scanf("%c", &val);
    	if (val == 'N' || val == 'n')						//如果是'Y'或'y'即继续执行,若是'N'或'n'则返回主函数
    	return 0;
    
    	printf("\n");
    	*/
    
    	printf("请输入你要查找的值:");
    	scanf("%d", &i);
    
    	for (j = 1;j <= L->length;j++)
    		if (i == L->elem[j])
    			printf("查找值为:%d,它的位置是:%d\n", i, j);
    }
    
    int main(void)										//主函数
    {
    	Sqlist L;
    
    	List_initialize(&L);							//线性表L的初始化
    	List_The_default_value(&L);						//线性表L的默认赋值
    
    	printf("完全初始化线性表结束,顺序线性表(增删改查)功能开始:\n\n\n");
    
    	List_insert(&L);								//线性表的插入(增)
    	List_drop(&L);									//线性表的删除(删)(删除在表中符合指定的值)
    	List_examine(&L);								//线性表的查找(查)
    	List_change(&L);								//线性表的更改(改)
    
    	return 0;
    }
    

    我对于一些代码的理解不是很透彻,就像该文章所一样的,被我打上注释的那串代码,我想着用户可以自己选择是否使用该功能,可是很奇怪,会有问题,第一个模块的询问是正常的当第二个模块再次询问时就直接跳过,这个程序是2星期前敲的,我现在也无法理解。

    我能是一名中职生16岁,很遗憾当时没好好学,不过现在是真的很想提升自己了,我想考本考研不仅仅是对我的改变更多是我可以但我不想在把自己葬送在手上,环境,师资,资源等其实我几乎都没有,几乎是自己一个人慢慢的接受和习惯了,我每天的学习时间是14小时左右,以后也不会变,这篇博客是我成长的开始

    我已经正式接触软件编程有8个月了吧,我一开始学习的是HTML/CSS/JavaScript,后来遇见了一个很好的指导老师,于是我转向了后端,

    C语言学习了4个月,我大致算了一下,1360个小时左右因为每天几乎都是除了吃饭睡觉就是学习这一门,学完后老师让我学习数据结构,一开始我看的是大话数据结构,1个月左右,大致300小时,我理解了框架和步骤,但不是很熟练,然后老师让我在学习C语言,我买了谭浩强的第五版C语言学习把书上的代码和习题全敲了一遍,后来又不看书去敲了一遍,查漏补缺了很多。

    花了很长2个月把,然后老师让我休息,我其实觉得提升自己是一件很有激情的事情,我很乐意也很愿意,与其说休息这就是我自己的休息方式。

    放寒假之前一个月我开始学习MYSQL,一直到现在我的计划主要是这样的且一直有条有序的执行着:

    6:00-7:00 是 补习理论知识(计算机组装,计算机网络这些知识一本一本的学)
    7:00-10:00 是 MYSQL;
    10:00-13:00 是 C++;
    14:00 - 16:30 是 C语言的细读理解每一句话
    16:00-18:30 是数据结构严蔚敏的
    一直到0:00是补习我的数学和英语

    链表的一些也打了,有时间就记录发,

    我的目前主要方向是C/C++,学习理解好后,大专开始专攻互联网网站Java web等技术不断扩展,学习前端,后端,数据库,框架,UI设计等等都会涉及且对我有用的会重点学习,我一直坚信T型发展才是我的路。

    但是,我也很迷茫,我不知道我应该怎样的系统的规划和路线去学习Java等后面的路线。但是,我不会停下!我热爱且不止于热爱~

    且剩余时间我学习了吉他,钢琴~
    元月底会有演出,虽然是内部的但也证明我不是空谈

    以下是目前为止记录的学习时间:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    我发这些也许会说我掺水了,但事实胜于雄辩,我每次的记录都会记录我的成长,而如何要达到的程度我想我的一切都在表里了~

    谢谢观看我的第一篇博客~

    再次感谢

    展开全文
  • #include<stdio.h> #include<stdlib.h> #include<malloc.h> #define OK 1 #define ERROR 0 #define OVERFLOW -2 ... //Status 是函数返回值类型,其值是函数结果状态代码。...//学生结构...
    #include<stdio.h>
    #include<stdlib.h>
    #include<malloc.h>
    #define OK 1
    #define ERROR 0
    #define OVERFLOW -2
    #define MAXSIZE 10
    typedef int Status; //Status 是函数返回值类型,其值是函数结果状态代码。
    //学生结构体的定义
    typedef struct { 
    	int no;      //2位数的学号
    	char name[8];   //姓名
    	int score;     //成绩
    }Student;
    
    //顺序表的定义
    typedef  struct {
    	Student  *elem;     //指向数据元素的基地址
    	int  length;       //线性表的当前长度                                                           
    }SqList;
    
    //算法2.1 顺序表的初始化:构造一个空的顺序表L
    Status InitList_Sq(SqList *L) {	
    	//为顺序表分配一个大小为MAXSIZE的数组空间
    	//malloc函数返回的是分配空间的地址,而elem是一个Student类型的指针,因此需要强制转换为(Student *)类型
    	//malloc函数的参数是要分配空间的大小,
    	//我们要在分配的空间中存储MAXSIZE个Student类型的数据,因此这块空间的大小为:MAXSIZE*sizeof(Student)
    	//sizeof(Student)表示一个Student类型的数据需要的空间大小
    	L->elem = (Student *)malloc(MAXSIZE*sizeof(Student)); 
    	if (!L->elem)
    		exit(OVERFLOW); //存储分配失败退出
    	L->length = 0; //空表长度为0
    	return OK;
    }
    
    //建表,即要建立含有具体数据的顺序表,因此建表之前需要先初始化,即先调用InitList_Sq(SqList *L)函数。
    Status CreatList_Sq(SqList *L){
    	int i;	
    	InitList_Sq(L);
        printf("请输入你要创建的顺序表元素个数(输入数字小于10):\n\n");
        scanf_s("%d", &L->length);//确定表长
        if (L->length >= MAXSIZE) {
            printf("输入数字超过顺序表的最大容量\n");
    		return ERROR;
        }else{ //如果输入的表长合法,则要求用户逐个输入学生信息   		
    		for (i = 0; i<L->length; i++) {					
    			printf("请输入第%d个学生的学号:", i+1);
    			scanf_s("%d", &L->elem[i].no);
    			printf("请输入第%d个学生的姓名:", i + 1);
    			scanf_s("%s", &L->elem[i].name, 8);
    			printf("请输入第%d个学生的成绩:", i + 1);
    			scanf_s("%d",&L->elem[i].score);
    			printf("*********第%d个学生信息输入完毕!********\n\n",i+1);
    		}
    		printf("---------全部学生信息输入完毕!-------------\n\n");
    		return OK;
    	}
    }
    //输出(显示)表中当前的所有元素
    void printStudent(SqList *L){
    	int i ;
    	printf("学号\t姓名\t成绩\n");
    	for ( i = 0; i < L->length; i++)
    	{
    		printf("%d\t%s\t%d\n",L->elem[i].no,L->elem[i].name,L->elem[i].score);
    	}
    }
    
    
    int main() {
    	SqList L;
    	int i = 0, temp=0, a=-1, c=-1, choose=0;
    	float score=0;
    	printf("1. 建表\n");
    	printf("2. 插入\n");
    	printf("3. 删除\n");
    	printf("4. 查找\n");
    	printf("5. 取值\n");
    
    	while (choose == 0) {
    		printf("请选择:\n");
    		scanf_s("%d", &choose);
    		switch (choose) {
    			case 1://创建顺序表
    				if (CreatList_Sq(&L)){
    					printf("建表成功!\n\n");
    					printf("--------------当前表中的学生信息如下--------------\n\n");
    					printStudent(&L);
    				}
    				else
    					printf("顺序表建立失败!\n\n");
    				break;
    			case 2://插入元素
    				//插入过程
    				//...
    				break;
    		}		
    	}
    	return 0;
    }

     

    展开全文
  • 数据结构-C语言实现线性表 SqList.h头文件 /*文件名:SqList.h*/ #include <stdio.h> #include <stdlib.h> //函数结果状态代码 #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define ...
  • 数据结构C语言线性表【顺序存储】使用malloc动态分配实现SqList.hSqList.cmain.c运行结果示例 SqList.h #define ListSize 100 #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE ...
  • 数据结构C语言线性表【顺序存储】定义结构体变量实现SqList.hSqList.cmain.c运行结果示例 SqList.h #define ListSize 100 #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE 1 #...
  • #include <stdio.h> #include <stdlib.h> #define OK 1 #define ERROR 0 #define OVERFLOW -2 typedef int status; typedef int KeyType; typedef int InfoType; typedef struct ... ...
  • //2_2.cpp/**author:zhaoyuemail:[emailprotected]date:2016-6-4note...*/#include"head.h"//----线性表的动态分配顺序存储结构----#define LIST_INIT_SIZE 100//线性表存储空间的初始分配量#define LISTINCREMENT 1...
  • ** 定义一个实现顺序存储结构的字符串类型的线性表 */ typedef struct string{ elemType * data;// int size; int length; }string; 定义初始化操作 string newString(int size){ string s; s.data=(elemType*...
  • 数据结构C语言版线性表之顺序存储 个人的学习笔记,如有不合理之处欢迎指正,谢谢! 自己写的代码
  • 数据结构 C语言 线性表 实验报告 原代码和实验报告
  • 数据结构C语言版线性表之链式存储 个人的学习笔记,如有不合理之处欢迎指正,谢谢! 自己写的代码(我本人觉得只有插入、删除有一丢丢复杂,所以只写了这两种操作的代码) #include<stdio.h> typedef ...
  • 数据结构C语言版线性表之双链表 个人的学习笔记,如有不合理之处欢迎指正,谢谢! 自己写的代码(我本人觉得只有插入、删除有一丢丢复杂,所以只写了这两种操作的代码) #include<stdio.h> typedef struct ...
  • 数据结构C语言版线性表之循环链表 个人的学习笔记,如有不合理之处欢迎指正,谢谢! 自己写的代码(我本人觉得只有插入、删除有一丢丢复杂,所以只写了这两种操作的代码) #include<stdio.h> typedef ...
  • #ifndef STATUS_H #define STATUS_H //函数结果状态代码 #define TRUE 1 #define FALSE 0 typedef int Status; typedef int SElemType; #endif
  • 数据结构C语言版线性表之双循环链表 个人的学习笔记,如有不合理之处欢迎指正,谢谢! 自己写的代码(我本人觉得只有插入、删除有一丢丢复杂,所以只写了这两种操作的代码) #include<stdio.h> typedef ...
  • //将最后一数输出来 printf("\n方案二:插入数据后的线性表中的数据为:"); p=L; p=p->next; for(i=1;i;i++,p=p->next) printf("%d ",p->data); printf("\n==================在线性表第i位置插入元素==============...
  • //删除线性表中第i位置的元素 #endif ③将函数的定义写在list.c包内 #include #include "list.h" //初始化顺序线性表 Status InitList(LinkList *L) //链表开辟内存 包括 数据域 与 指针域 { *L=(LinkList *)malloc...
  • 数据结构严蔚敏C语言版线性表顺序存储结构(顺序表)C语言实现相关代码1.运行环境2.准备工作1)项目构建1>新建一个SeqList项目2>新建两个文件Sources和Headers3>新建两个C/C++ source和一个C/C++ header2...
  • 数据结构C语言线性表的创建、插入、删除等操作 #include&amp;amp;lt;stdio.h&amp;amp;gt; #include&amp;amp;lt;stdlib.h&amp;amp;gt; #define TRUE 1; #define FALSE 0; #define OK 1; #...
  • 数据结构C语言代码--线性表
  • 数据结构c语言版的基本操作算法实现。
  • } void PrintSeqList(seqlist L)//打印线性表内容 { for (int i = 0; i < L->len; i++) { printf("%d ", L->data[i]); } printf("\n"); } Main.C void main(void) { seqlist L1 = CreateSeqList(5); AddVal...
  • 数据结构》-C语言版——严蔚敏,书37页、38页其余带头结点的线性链表操作函数,不再具体实现, 因为,本代码已经实现了在任意合法位置的插入与删除函数,可以轻易的实现这些省略的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,666
精华内容 3,866
关键字:

数据结构c语言版线性表代码

c语言 订阅
数据结构 订阅