c語言實現線性表的基本功能

2021-09-10 18:17:00 字數 1419 閱讀 9455

#include#include//區別c和c++:  1. c語言是#includec++是#include是完全物件導向 c++是半物件導向(出現類)(既面向過程又物件導向) c語言是面向過程

語言原始檔拓展名可以是cpp(c plus plus),c++向下相容的

#define listsize 100//常量

typedef structsqlist;

//c語言定義乙個結構體要用typedef,宣告變數可以用sqlist sq1;

//引用型引數&或指標實際是將主函式引數變數位址傳遞給子函式,子函式直接操作主函式的變數,不會為形參開闢記憶體空間

//如果子函式有返回值,就可以不使用引用型變數,結果返回給主函式之後,為形參開闢記憶體空間會被釋放掉

int init(sqlist *l)

//sizeof(int) 求得int型別所佔的位元組數

//malloc(sizeof(int)) 申請乙個跟int所佔的空間大小一樣的空間

//malloc:開闢乙個儲存空間,返回乙個指向儲存空間首位址的無型別指標

//(int*)malloc(sizeof(int)) 將申請得到的空間位址轉換成了int型別空間位址

l->len=0;

l->maxsize=listsize;

printf("initial finish\n");

return 0;

}int getlen(sqlist sq)

int getelem(sqlist sq,int i)

int locate(sqlist sq,int x)

for(j=sq->len;j>=i;j--)

sq->data[i-1]=x;

sq->len++;

return 0;

}int deleteelem(sqlist *sq,int i)

for(j=i;jlen;j++)

sq->len--;

return 0;

}void displist(sqlist sq)

printf("\n");

}void main()

}printf("len:%d\n",getlen(sq));

displist(sq);

insert(&sq,4,888);

printf("len:%d\n",getlen(sq));

displist(sq);

deleteelem(&sq,4);

printf("len:%d\n",getlen(sq));

displist(sq);

printf("%d\n",locate(sq,81));

printf("%d\n",getelem(sq,4));

system("pause");

}

線性表基本功能的c語言實現

include define false 0 define ok 1 define maxsize 10 定義了線性表的結構 typedef struct sqlist 初始化線性表 int initlist sqlist l 向線性表插入資料 int listinsert sqlist l,int...

線性表基本功能的實現ADT

一 基本功能包括 1 建立線性表 輸入有兩行,第一行是乙個整數n,線性表的長度 第二行是n和資料元素 2 插入 輸入兩個整數,即元素插入的位置和元素值 3 刪除 輸入乙個整數,即要刪除的元素 4 搜尋 輸入乙個整數,即搜尋元素的值 5 輸出 輸出線性表的各個元素,空格分開。6 集合的並運算 輸入建立...

順序表的基本功能(C語言實現)

include include define maxsize 100 define true 1 define ok 1 define false 0 define error 0 define overflow 1 typedef int elemtype typedef int status t...