實現線性順序表的增刪查改功能,主要有main.h main.c list.c 三個模組函式實現。
#ifndef _main_h_
#define _main_h_
#define size 500
typedef int data_t;
typedef struct
list;
enum e_list
;enum e_islistfull
;list * createlist();
int insertlist(list * list, data_t data, int offset);
int updatelist(list * list, data_t data, int offset);
void destroylist(list * list);
int deletelist(list * list, data_t * data, int offset);
int updatelist(list * list, data_t data, int offset);
void showlist(list * list);
int islistfull(list * list);
#endif
#include "main.h"
#include int main(void)
if (ok == updatelist(list, 100, 5))
if (ok == updatelist(list, -100, 0))
//刪除資料
if (ok == deletelist(list, &data, 0))
if (ok == deletelist(list, &data, 0))
if (ok == deletelist(list, &data, 4))
if (ok == deletelist(list, &data, -1))
destroylist(list);
list = null;
return 0;
}
/*
易錯點: 1, list->count 容易寫成list.count
2, 在offset位置處插入和刪除資料的時候,容易越界出現段錯誤
*/#include "main.h"
#include #include #include list * createlist()
memset(list, 0, size * sizeof(list));
list->count = 0;
//list->data[0] = 0;
return list;
}void destroylist(list * list)
free(list);
list = null;
}int islistfull(list * list)
if (list->count == size - 1)
return false;
}int insertlist(list * list, data_t data, int offset)
if (islistfull(list) == false)
list->data[offset] = data;
} list->count++;
return ok;
}void showlist(list * list)
int i = 0;
for (i = 0; i < list->count; i++)
puts("");
//return true;
}int deletelist(list * list, data_t * data, int offset)
*data = (list->data[offset]);
int i = offset;
for (i = offset; i < list->count - 1; i++)
list->count--;
return ok;
}int updatelist(list * list, data_t data, int offset)
list->data[offset] = data;
return ok;
}
實現順序表的增刪查改
線性表分為兩種 順序表 順序儲存 和鍊錶 鏈式儲存 這裡實現一下順序表管理資料的增刪查改操作 標頭檔案自定義標頭檔案中一般存放自定義函式的函式宣告 sqlist.h pragma once include include include typedef int sqldatatype typedef...
順序表的增刪查改
今天來實現簡單的順序表地增刪查詢操作 1.在開始敲 前,首先要明確自己要幹嘛。2.然後開始構思自己所要實現什麼樣的功能。3.之後將之前構思的功能弄好框架。4.最後再將每個框架的內容補充上。標頭檔案 include pragma once include typedef int sldatatype ...
順序表的增刪查改
順序表實現 順序表是用一段實體地址連續的儲存單元依次儲存的線性結構,一般情況下採用陣列儲存。在陣列上完成資料的增刪查改。靜態順序表 使用定長陣列儲存 動態順序表 使用動態開闢的陣列儲存 靜態順序表適用於確定知道需要存多少資料的場景。靜態順序表的定長陣列導致n定大了,空間開多了浪費,開少了不夠用。首先...