![本科生導(dǎo)師制問(wèn)題_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/6ca9f905-e752-4458-acad-3ef53490016e/6ca9f905-e752-4458-acad-3ef53490016e1.gif)
![本科生導(dǎo)師制問(wèn)題_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/6ca9f905-e752-4458-acad-3ef53490016e/6ca9f905-e752-4458-acad-3ef53490016e2.gif)
![本科生導(dǎo)師制問(wèn)題_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/6ca9f905-e752-4458-acad-3ef53490016e/6ca9f905-e752-4458-acad-3ef53490016e3.gif)
![本科生導(dǎo)師制問(wèn)題_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/6ca9f905-e752-4458-acad-3ef53490016e/6ca9f905-e752-4458-acad-3ef53490016e4.gif)
![本科生導(dǎo)師制問(wèn)題_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/6ca9f905-e752-4458-acad-3ef53490016e/6ca9f905-e752-4458-acad-3ef53490016e5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)名稱:本科生導(dǎo)師制問(wèn)題實(shí)驗(yàn)類型:綜合性實(shí)驗(yàn)實(shí)驗(yàn)日期:2012.5.301.問(wèn)題描述(2)本科生導(dǎo)師制問(wèn)題在高校的教學(xué)改革中,有很多學(xué)校實(shí)行了本科生導(dǎo)師制。一個(gè)班級(jí)的學(xué)生被分給幾個(gè)老師,每個(gè)老師帶n個(gè)學(xué)生,如果該老師還帶研究生,那么研究生也可直接帶本科生。本科生導(dǎo)師制問(wèn)題中的數(shù)據(jù)元素具有如下形式:l 導(dǎo)師帶研究生(老師,(研究生1,(本科生1,本科生m1),(研究生2,(本科生1,本科生m2)l 導(dǎo)師不帶研究生(老師,(本科生1,本科生m)導(dǎo)師的自然情況只包括姓名、職稱;研究生的自然情況只包括姓名、班級(jí);本科生的自然情況只包括姓名、班級(jí)。2.數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)(2)本科生導(dǎo)師制問(wèn)題
2、typedef struct GLNodechar name100; /*教師或?qū)W生的姓名*/char prof100; /*教師結(jié)點(diǎn)表示職稱,學(xué)生結(jié)點(diǎn)表示班級(jí)*/int type; /*結(jié)點(diǎn)類型:0-教師,1-研究生,2-本科生*/struct struct GLNode *hp, *tp; ptr; /*hp指向同級(jí)的下一結(jié)點(diǎn),tp指向下級(jí)的首結(jié)點(diǎn)*/GList;3.算法設(shè)計(jì)(2)本科生導(dǎo)師制問(wèn)題l 建立:建立導(dǎo)師廣義表。l 插入:將某位本科生或研究生插入到廣義表的相應(yīng)位置。l 刪除:將某本科生或研究生從廣義表中刪除。l 查詢:查詢導(dǎo)師、本科生(研究生)的情況。l 統(tǒng)計(jì):某導(dǎo)師帶了多少個(gè)研
3、究生和本科生。l 輸出:將某導(dǎo)師所帶學(xué)生情況輸出。l 退出:程序結(jié)束。4.界面設(shè)計(jì)(2)本科生導(dǎo)師制問(wèn)題5. 運(yùn)行、測(cè)試與分析(2)本科生導(dǎo)師制問(wèn)題6、源代碼:(2)本科生導(dǎo)師制問(wèn)題#includevoid menu()printf(*n);printf(1.%35sn,建立廣義表);printf(2.%35sn,插入學(xué)生);printf(3.%35sn,刪除學(xué)生);printf(4.%35sn,查詢信息);printf(5.%35sn,統(tǒng)計(jì)導(dǎo)師的研究生,本科生人數(shù));printf(6.%35sn,輸出廣義表);printf(7.%35sn,退出);printf(*n);/這部分源代碼int
4、main(int argc,char *argv)typedef *head;char str100;int choice;while(1)menu();printf(請(qǐng)輸入你要選擇的序號(hào):n);scanf(%d,&choice);switch(choice)case 1:printf(請(qǐng)輸入你想建立的標(biāo)準(zhǔn)廣義表,例如:(高老師-教授-0,(李平-一班-2,楊梅-二班-2),(李平-博士-0,(李平-三班-1,(李平-四班-2)n);scanf(%s,str);head=glistcreate(str);break;case 2:head=studentinsert(head);break;c
5、ase 3:head=studentdelete(head);break;case 4:enquire(head);break;case 5:studentcount(head);break;case 6:glistprint(head);break;case 7:return 0;return 0;7.實(shí)驗(yàn)收獲及思考熟悉了編譯環(huán)境,并且對(duì)程序調(diào)試中出現(xiàn)的一些問(wèn)題有了較好的解決方法,為以后的實(shí)驗(yàn)打下了良好的基礎(chǔ)。學(xué)會(huì)了解決具體問(wèn)題的方法,增強(qiáng)實(shí)踐能力,將理論與實(shí)踐相結(jié)合,以便于知識(shí)的扎實(shí)與鞏固。另一種方法。C語(yǔ)言#include #include #include typedef char D
6、ataType;#include GList.hvoid main() char str1=(a,b,c),(d),e); char str2=(a,b,c),(d),e); char hstr100; GLNode *h, *p; int depth, number, length; h=CreatGList(str1); printf(廣義表str1=%s,str2); DecomposeStr(str2, hstr); printf(n表頭=%s,hstr); printf( 表尾=%s,str2); depth=GListDepth(h); printf(n深度depth=%d,dep
7、th); length=GListLength(h); printf(n深度length=%d, length); number=GListAtomNum(h); printf(n原子元素個(gè)數(shù)number=%d, number); p=GListSearch(h,d); if (p!=NULL) printf(n數(shù)據(jù)元素%c在廣義表中, p-val.atom); else printf(n廣義表中不存在要查找的數(shù)據(jù)元素n); DestroyGList(h);頭文件:typedef struct GListNodeint tag; union DataType atom; /原子元素域 stru
8、ct subGL struct GListNode *head; /頭指針 struct GListNode *tail; /尾指針 subList; /子表域 val;GLNode;void DecomposeStr(char str, char hstr) int i, j, tag, n = strlen(str); char ch;ch = str0;tag = 0; for(i = 0; i = n-1; i+) if(stri = , & tag = 1 ) break;/搜索最外層的第一個(gè)逗號(hào) ch = stri; if(ch = () tag+; if(ch = ) tag-;
9、 if(i = n-1 & stri = ,)/廣義表表尾部分非空時(shí) for(j = 0; j i-1; j+) hstrj = strj+1;/取表頭字符串 hstrj = 0; /添加結(jié)束符 if(stri = ,) i+; str0 = (; /添( for(j = 1; i tag = 0; h-val.atom = str0; else/建立子表 h = (GLNode *)malloc(sizeof(GLNode); h-tag = 1; DecomposeStr(str, hstr); h-val.subList.head = CreatGList(hstr); if(strcm
10、p(str, () != 0) /表尾非空時(shí) h-val.subList.tail = CreatGList(str); else h-val.subList.tail = NULL; /賦值空指針 return h;int GListDepth(GLNode *h) int max, dep; GLNode *pre; if(h = NULL) return 1;/遞歸出口,空表深度為1 if(h-tag = 0) return 0; /遞歸出口,原子元素深度為0/遞歸求廣義表深度 pre = h; for(max = 0; pre != NULL; pre = pre-val.subLis
11、t.tail) dep = GListDepth(pre-val.subList.head); /求表頭深度 if(dep max) max = dep; return max + 1; int GListLength(GLNode *h) int number = 0; GLNode *p; for(p = h; p != NULL; p = p-val.subList.tail) number+; return number; int GListAtomNum(GLNode *h) if(h = NULL) return 0; else if(h-tag = 0) return 1; el
12、se return GListAtomNum(h-val.subList.head) + GListAtomNum(h-val.subList.tail); GLNode *GListSearch(GLNode *h, DataType x) GLNode *p; if(h=NULL) return NULL;/查找失敗遞歸出口 if(h-tag=0&h-val.atom=x) return h;/查找成功遞歸出口 if(h-tag=1&h-val.subList.head!=NULL) p=GListSearch(h-val.subList.head,x); /在頭鏈中查找 if (p!=NULL) return p; if(h-tag=1&h-val.subList.tail!=NULL) p=GListSearch(h-val.subList.tail,x); /在尾鏈中查找 if (p!=NULL) return p; return NULL; /回溯至上一層 void DestroyGList(GLNode
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DB35T 2234-2024交趾黃檀容器苗培育技術(shù)規(guī)程
- 鄉(xiāng)村民宿合作協(xié)議合同模板
- 產(chǎn)品加工的委托合同
- 二手車轉(zhuǎn)讓合同模板
- 交通設(shè)施采購(gòu)及養(yǎng)護(hù)合同范本
- 親屬間房屋無(wú)償贈(zèng)與合同
- 個(gè)人農(nóng)村小產(chǎn)權(quán)房抵押融資合同
- 個(gè)體合作經(jīng)營(yíng)收益分配合同
- 產(chǎn)業(yè)協(xié)同發(fā)展合同范本
- 個(gè)人合伙創(chuàng)業(yè)合同書范本
- 北京市豐臺(tái)區(qū)2024-2025學(xué)年九年級(jí)上學(xué)期期末語(yǔ)文試題(含答案)
- 計(jì)劃供貨時(shí)間方案
- 2024年石柱土家族自治縣中醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫(kù)頻考點(diǎn)附帶答案
- 2024人教新目標(biāo)(Go for it)八年級(jí)英語(yǔ)下冊(cè)【第1-10單元】全冊(cè) 知識(shí)點(diǎn)總結(jié)
- 房屋市政工程生產(chǎn)安全重大事故隱患判定標(biāo)準(zhǔn)(2024版)宣傳畫冊(cè)
- 杭州市房地產(chǎn)經(jīng)紀(jì)服務(wù)合同
- 2024年大宗貿(mào)易合作共贏協(xié)議書模板
- 初中數(shù)學(xué)教學(xué)經(jīng)驗(yàn)分享
- 新聞?dòng)浾咦C600道考試題-附標(biāo)準(zhǔn)答案
- 2024年公開招聘人員報(bào)名資格審查表
- TSG ZF001-2006《安全閥安全技術(shù)監(jiān)察規(guī)程》
評(píng)論
0/150
提交評(píng)論