#include<stdio.h>
#include<stdlib.h>
#define Size 50
//定義順序表結構體型別
typedef struct Table{
int*head;//順序表頭指標,為整型
int length;//順序表中元素個數
int size; //順序表的長度
}Table;
//建立順序表
Table CreateTable(){
Table T;
if(!(T.head=(int*)malloc(Size*sizeof(int)))){
printf("記憶體分配錯誤!\n");
exit(0);
}
T.size=Size;
T.length=0;
return T;
//增加
void Insert(Table T,int set,int values)//set為插入的位置,values為值
{
//首先判斷插入位置是否正確
if(set<0||set>T.length){
printf("插入位置不正確!\n");
reutrn;
//判斷是否有足夠的記憶體空間儲存增加的數
if(T.length==T.size){
if(!(T.head=(int*)realloc(T.head,(T.size+10)*sizeof(int)))){
T.size+=10;
//插入資料
for(int i=s.length;i>set;i--)
T.head[i]=T.head[i-1];
T.head[set]=values;
T.length++;
void Delete(Tabel T,int set)
if(set<0||set>=T.length)
return;
//輸出資料
for(int i=set;i<s.length;i++)
T.head[i]=T.head[i+1];
T.length--;
//查詢
int Search(Tabel T,int value)
for(int i=0;i<T.length;i++)
if(T.head[i]==value)
return i;
return -1;
#include<stdio.h>
#include<stdlib.h>
#define Size 50
//定義順序表結構體型別
typedef struct Table{
int*head;//順序表頭指標,為整型
int length;//順序表中元素個數
int size; //順序表的長度
}Table;
//建立順序表
Table CreateTable(){
Table T;
if(!(T.head=(int*)malloc(Size*sizeof(int)))){
printf("記憶體分配錯誤!\n");
exit(0);
}
T.size=Size;
T.length=0;
return T;
}
//增加
void Insert(Table T,int set,int values)//set為插入的位置,values為值
{
//首先判斷插入位置是否正確
if(set<0||set>T.length){
printf("插入位置不正確!\n");
reutrn;
}
//判斷是否有足夠的記憶體空間儲存增加的數
if(T.length==T.size){
if(!(T.head=(int*)realloc(T.head,(T.size+10)*sizeof(int)))){
printf("記憶體分配錯誤!\n");
exit(0);
}
T.size+=10;
}
//插入資料
for(int i=s.length;i>set;i--)
T.head[i]=T.head[i-1];
T.head[set]=values;
T.length++;
}
void Delete(Tabel T,int set)
{
if(set<0||set>=T.length)
{
return;
}
//輸出資料
for(int i=set;i<s.length;i++)
T.head[i]=T.head[i+1];
T.length--;
}
//查詢
int Search(Tabel T,int value)
{
for(int i=0;i<T.length;i++)
if(T.head[i]==value)
return i;
return -1;
}