c语言库函数线性表 c语言线性表的基本操作

数据结构中,怎么用C语言构造线性表!#define
OK
1
#define
ERROR
-1
#define
MAX_SIZE
100
typedef
int
Status
;
typedef
int
ElemType
;
typedef
struct
sqlist
{
ElemType
Elem_array[MAX_SIZE]
【c语言库函数线性表 c语言线性表的基本操作】;
int
length
;
}
SqList
;
以上为线性表建立的相关定义
Status
Init_SqList(
SqList
*L
)
{
L-elem_array=(
ElemType
*
)malloc(MAX_SIZE*sizeof(
ElemType
)
)
;
if
(
!L
-
elem_array
)
return
ERROR
;
else
{
L-length=
;
return
OK
;
}
}
以上为线性表初始化函数
有以上两部分可构造一个线性表
C语言库函数里有线性表基本操作函数吗?在实际应用中,线性表都是以栈、队列、字符串、数组等特殊线性表的形式来使用的 。
C语言标准库没有线性表的操作
但是C++ STL提供了很多函数/数据结构
c语言线性表for(int *p = *(l-elem[l-length- 1]);p = q; --p)
在for语句里c语言库函数线性表,p被声明指针,但是c语言库函数线性表你赋c语言库函数线性表的值*(l-elem[l-length- 1])并不是指针
猜测c语言库函数线性表你c语言库函数线性表的意思,应该改为:
for(int *p = (l-elem[l-length- 1]);p = q; --p)
C语言中怎么定义个线性表1、定义结构体类型,这里需要利用指针和结构体,其中m和n分别表示矩阵的行和列 。
2、为矩阵申请储存空间 , 注意这里使用了malloc()函数 。
3、初始化矩阵,这里将矩阵初始化为m*n的数组,且矩阵中的每一个元素的值均为0 。
4、释放存储空间 。
5、一般在定义阶段就确定数组的大?。淙胧旨次榇笮?。
6、然后,可以对数组进行初始化,在花括号{}中输入就完成了 。
C语言线性表c语言中 , 实参与形参是单向传递的 。所以虽然在ccc函数里为l赋值了 , 但主函数里l的值仍然保持为NULL 。要想在函数中为参数赋值,需要用指针 。
改成这样就行了:
#includestdio.h
#includestdlib.h
typedef struct aaa{
int a;
struct aaa *next;
}*uuu;
void ccc(uuu *l);
void ddd(uuu l);
void main(){
int m;
uuu l;
l=NULL;
do{
printf("1_____插入一个元素:\n2_____输出全部元素:\n0_____退出.\n");
scanf("%d",m);
switch(m) {
case 1:
ccc(l);
break;
case 2:
ddd(l);
break;
case 0:
break;
default:
printf("输入错误,请重新输入:\n");
}
}while(m!=0);
}
void ccc(uuu *l){
struct aaa *p;
printf("输入要插入的数:\n");
p=(uuu)malloc(sizeof(uuu));
scanf("%d",p-a);
p-next=*l;
*l=p;
}
void ddd(uuu l){
struct aaa *p;
p=l;
while(p!=NULL) {
printf("%d\t",p-a);
p=p-next;
}
}
c语言库函数线性表的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于c语言线性表的基本操作、c语言库函数线性表的信息别忘了在本站进行查找喔 。

    推荐阅读