要求:
定義乙個包含學生資訊(學號,姓名,成績)的的順序表和煉表,使其具有如下功能:
(1) 根據指定學生個數,逐個輸入學生資訊;
(2) 逐個顯示學生表中所有學生的相關資訊;
(3) 根據姓名進行查詢,返回此學生的學號和成績;
(4) 根據指定的位置可返回相應的學生資訊(學號,姓名,成績
); (5) 給定乙個學生資訊,插入到表中指定的位置;
(6) 刪除指定位置的學生記錄;
(7) 統計表中學生個數。
定義乙個包含學生資訊(學號,姓名,成績)的的順序表和煉表,使其具有如下功能:
(1) 根據指定學生個數,逐個輸入學生資訊;
(2) 逐個顯示學生表中所有學生的相關資訊;
(3) 根據姓名進行查詢,返回此學生的學號和成績;
(4) 根據指定的位置可返回相應的學生資訊(學號,姓名,成績
); (5) 給定乙個學生資訊,插入到表中指定的位置;
(6) 刪除指定位置的學生記錄;
(7) 統計表中學生個數。
#include#include#include#include#define ok 1
#define error 0
#define overflow -2
typedef int status; // 定義函式返回值型別
typedef struct
student;
typedef student elemtype;
typedef struct lnode
lnode,*linklist;
status initlist(linklist &l) // 構造空鍊錶 l
; status getelem(linklist l,int i,elemtype &e) // 訪問鍊錶,找到 i位置的資料域,返回給 e
if(!p||j>i) return error;
e=p->data;
return ok;
} ;
status search(lnode l,char str,linklist &p) // 根據名字查詢
return error;
} ;
status listinsert(linklist l,int i,elemtype e) // 在 i個位置插入某個學生的資訊
if(!p||j>i-1) return error;
s=(struct lnode*)malloc(sizeof(lnode));
s->data=e;
s->next=p->next;
p->next=s;
return ok;
}
status listdelete(linklist p,int i) // 刪除 i位置的學生資訊
if(!(p->next)||(j>i-1)) return error;
linklist q;
q=p->next;
p->next=q->next;
delete q;
return ok;
}
void input(elemtype *e)
void output(elemtype *e)
int main()
break;
case 3:
for(int i=1;i<=x;i++)
break;
case 4:
char s[20];
printf("請輸入要查詢的學生姓名:");
scanf("%s",s);
if(search(l,s,p))
output(&(p->data));
else
puts("對不起,查無此人");
puts("");
break;
case 5:
printf("請輸入要查詢的位置:");
int id1;
scanf("%d",&id1);
getelem(&l,id1,c);
output(&c);
break;
case 6:
printf ("請輸入要插入的位置:");
int id2;
scanf("%d",&id2);
printf("請輸入學生資訊:\n");
input(&d);
if(listinsert(&l,id2,d))
else
break;
case 7:
printf("請輸入要刪除的位置:");
int id3;
scanf("%d",&id3);
if(listdelete(&l,id3))
else
break;
case 8:
printf("已錄入的學生個數為:%d\n\n",x);
break;
} }
printf("\n\n謝謝您的使用,請按任意鍵退出\n\n\n");
system("pause");
return 0;
}
實驗一 線性表的基本操作
一 線性結構的順序表基本操作 實驗目的 1.學會定義單鏈表的結點型別 線性表的順序儲存型別,實現c程式的基本結構,對線性表的一些基本操作和具體的函式定義。2.掌握順序表的基本操作,實現順序表的插入 刪除 查詢以及求並集等運算。3.掌握對多函式程式的輸入 編輯 除錯和執行過程。實驗要求 1 預習c語言...
實驗一 線性表的基本操作實現
1 實驗目的 學習線性表的順序儲存結構,掌握線性表的建立,查詢,插入,刪除和輸出等基本操作。2 實驗內容 用c 的模板機制來實現線性表的基本操作 學習掌握線性表的順序儲存結構 鏈式儲存結構的設計與操作。對順序表建立 插入 刪除的基本操作,對單鏈表建立 插入 刪除的基本操作演算法。3 實驗中用到的資料...
線性表的鍊錶實驗
1 單鏈表的建立。先建立頭結點head,將頭結點的指標域置為空 然後新建乙個結點p,把此新結點鏈結到單鏈表的尾端或始端。2 單鏈表的插入。新建乙個結點p,指定插入位置 從單鏈表頭開始查詢結點位置。3 單鏈表的刪除。指定刪除位置 從單鏈表頭開始查詢結點位置。這是學資料結構的第乙個實驗,很簡單,不過當初...