freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

棧的操作(實驗報告)-文庫吧

2025-07-05 03:08 本頁面


【正文】 ===\n)。 StackNode * p。 p=stop。 while (p!=NULL) { printf(%d\n,pdata)。 p=pnext。 } printf(=======================================\n)。}void main(){ printf(================= 鏈棧操作=================\n\n)。 int i,m,n,a。 LinkStack * s。 s=(LinkStack *)malloc(sizeof(LinkStack))。 int cord。 do{ printf(\n)。 printf(第一次使用必須初始化!\n)。 printf(\n)。 printf(\n 主菜單 \n)。 printf(\n 1 初始化鏈棧 \n)。 printf(\n 2 入棧 \n)。 printf(\n 3 出棧 \n)。 printf(\n 4 取棧頂元素 \n)。 printf(\n 5 置空鏈棧 \n)。 printf(\n 6 結(jié)束程序運行 \n)。 printf(\n\n)。 printf(請輸入您的選擇( 1, 2, 3, 4, 5,6))。 scanf(%d,amp。cord)。 printf(\n)。 switch(cord) { case 1: { InitStack(s)。 Disp(s)。 }break。 case 2: {printf(輸入將要壓入鏈棧的數(shù)據(jù)的個數(shù):n=)。 scanf(%d,amp。n)。 printf(依次將%d個數(shù)據(jù)壓入鏈棧:\n,n)。 for(i=1。i=n。i++) {scanf(%d,amp。a)。 pushLstack(s,a)。 } Disp(s)。 }break。 case 3: { printf(\n出棧操作開始!\n)。 printf(輸入將要出棧的數(shù)據(jù)個數(shù):m=)。 scanf(%d,amp。m)。 for(i=1。i=m。i++) {printf(\n第%d次出棧的數(shù)據(jù)是:%d,i,popLstack(s))。} Disp(s)。 }break。 case 4: { printf(\n\n鏈棧的棧頂元素為:%d\n,StackTop(s))。 printf(\n)。 }break。 case 5: { setEmpty(s)。 Disp(s)。 }break。 case 6: exit(0)。 } }while (cord=6)。}[實驗3] 隊列的順序表示和實現(xiàn)實驗內(nèi)容與要求編寫一個程序?qū)崿F(xiàn)順序隊列的各種基本運算,并在此基礎上設計一個主程序,完成如下功能:(1)初始化隊列(2)建立順序隊列(3)入隊(4)出隊(5)判斷隊列是否為空(6)取隊頭元素(7)遍歷隊列分析:隊列的順序存儲結(jié)構(gòu)稱為順序隊列,順序隊列實際上是運算受限的順序表。入隊時,將新元素插入rear所指的位置,然后將rear加1。出隊時,刪去front所指的元素,然后將front加1并返回被刪元素。順序隊列中的溢出現(xiàn)象:(1) 下溢現(xiàn)象。當隊列為空時,做出隊運算產(chǎn)生的溢出現(xiàn)象?!跋乱纭笔钦,F(xiàn)象,常用作程序控制轉(zhuǎn)移的條件。(2) 真上溢現(xiàn)象。當隊列滿時,做進棧運算產(chǎn)生空間溢出的現(xiàn)象。“真上溢”是一種出錯狀態(tài),應設法避免。(3) 假上溢現(xiàn)象。由于入隊和出隊操作中,頭尾指針只增加不減小,致使被刪元素的空間永遠無法重新利用。當隊列中實際的元素個數(shù)遠遠小于向量空間的規(guī)模時,也可能由于尾指針已超越向量空間的上界而不能做入隊操作。該現(xiàn)象稱為假上溢現(xiàn)象。注意:(1)當頭尾指針相等時,隊列為空。(2)在非空隊列里,隊頭指針始終指向隊頭元素,尾指針始終指向隊尾元素的下一位置。參考程序:include include define MAXNUM 100define Elemtype intdefine TRUE 1define FALSE 0typedef struct{ Elemtype queue[MAXNUM]。 int front。 int rear。}sqqueue。 /*隊列初始化*/int initQueue(sqqueue *q) { if(!q) return FALSE。 qfront=1。 qrear=1。 return TRUE。} /*入隊*/int append(sqqueue *q, Elemtype x) { if(qrear=MAXNUM1) return FALSE。 qrear++。 qqueue[qrear]=x。 return TRUE。}/*出隊*/Elemtype Delete(sqqueue *q){ Elemtype x。 if (qfront==qrear) return 0。 x=qqueue[++qfront]。 return x。}/*判斷隊列是否為空*/int Empty(sqqueue *q){ if (qfront==qrear) return TRUE。 return FALSE。 }/*取隊頭元素*/int gethead(sqqueue *q){ if (qfront==qrear) return 0。 return(qqueue[qfront+1])。 }/*遍歷隊列*/void display(sqqueue *q){ int s。 s=qfront。 if (qfront==qrear) printf(隊列空!\n)。 else {printf(\n順序隊列依次為:)。 while(sqrear) {s=s+1。 printf(%d, qqueue[s])。 } printf(\n)。 printf(順序隊列的隊尾元素所在位置:rear=%d\n,qrear)。 printf(順序隊列的隊頭元素所在位置:front=%d\n,qfront)。 }}/*建立順序隊列*/void Setsqqueue(sqqueue *q){ int n,i,m。 printf(\n請輸入將要入順序隊列的長度:)。 scanf(%d,amp。n)。 printf(\n請依次輸入入順序隊列的元素值:\n)。 for (i=0。in。i++) { scanf(%d,amp。m)。 append(q,m)。} }main(){ sqqueue *head。 int x,y,z,select。 head=(sqqueue*)malloc(sizeof(sqqueue))。 do{printf(\n第一次使用請初始化!\n)。 printf(\n請選擇操作(17):\n)。 printf(===================================\n)。 printf(1 初始化\n)。 printf(2 建立順序隊列\(zhòng)n)。 printf(3 入隊\n)。 printf(4 出隊 \n)。 printf(5 判斷隊列是否為空\n)。 printf(6 取隊頭元素 \n)。 printf(7 遍歷隊列\(zhòng)n)。 printf(===================================\n)。 scanf(%d,amp。select)。 switch(select) {case 1: { initQueue(head)。 printf(已經(jīng)初始化順序隊列!\n)。 break。 } case 2: { Setsqqueue(head)。 printf(\n已經(jīng)建立隊列!\n)。 display(head)。 break。 } case 3: { printf(請輸入隊的值:\n )。 scanf(%d,amp。x)。 append(head,x)。 display(he
點擊復制文檔內(nèi)容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1