




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
實(shí)驗(yàn)報告院(系):信息科學(xué)與技術(shù)學(xué)院課程名稱:數(shù)據(jù)結(jié)構(gòu)日期:班級學(xué)號實(shí)驗(yàn)室專業(yè)姓名計算機(jī)號實(shí)驗(yàn)名稱棧與隊列的基本使用成績評定所用軟件VC或TC教師簽名實(shí)驗(yàn)?zāi)康恼莆諚Ec隊列的基本概念掌握順序棧的建立、入棧和出棧等方法。掌握循環(huán)隊列的概念和建立、入隊出隊方法。了解鏈棧、鏈隊的概念及有關(guān)操作。實(shí)驗(yàn)準(zhǔn)備復(fù)習(xí)書上有關(guān)內(nèi)容。閱讀實(shí)驗(yàn)內(nèi)容1,寫出子函數(shù)功能并進(jìn)行程序填空。閱讀實(shí)驗(yàn)內(nèi)容2,寫出各子函數(shù)功能編出實(shí)驗(yàn)內(nèi)容3的源程序。實(shí)驗(yàn)內(nèi)容一、棧的基本操作利用棧將一個十進(jìn)制數(shù)字轉(zhuǎn)換成一個二進(jìn)制數(shù)。請寫出子函數(shù)功能并進(jìn)行程序填空再上機(jī)運(yùn)行。(1)程序如下:#include"stdio.h"#include"stdlib.h"#defineStack_size30typedefstruct{intelem[Stack_size];inttop;}SeqStack;voidInitStack(SeqStack*s){s->top=-1;}intPush(SeqStack*s,intx){if(s->top==Stack_size-1)return(0);s->top++;s->elem[s->top]=x;return(1);}intPop(SeqStack*s,int*x){if(s->top==-1)return0;else *x=s->elem[s->top];s->top--;return(1);}intIsEmpty(SeqStacks){if(s.top==-1)return1;elsereturn(0);}voidConversion(intN){SeqStackS;intx;InitStack(&S);while(N>0){x=N%2;Push(&S,x);N=N/2;}while(!IsEmpty(S)){Pop(&S,&x);printf("%d",x);}}voidmain(){intx;printf("Enteranumber:");scanf("%d",&x);Conversion(x);}二、隊列的基本操作:#defineqsize50#include"stdio.h"typedefstruct{intdata[qsize];intfront,rear;}sqqueue;intinqueue(sqqueue*q,intx)//入隊運(yùn)算{if((q->rear+1==q->front)){printf("queueoverflow");return0;}q->data[q->rear]=x;q->rear=(q->rear+1)%qsize;return(1);}intdequeue(sqqueue*q)//出隊運(yùn)算{inttemp; if(q->rear==q->front){printf("queueunderflow");return(0);}temp=q->data[q->front];q->front=(q->front+1)%qsize;return(temp);}voidprin(sqqueue*q)//輸出{inti;printf("\n");for(i=q->front;i!=q->rear;i=(i+1)%qsize)printf("%d",q->data[i]);printf("\n");}voidmain()//主函數(shù){sqqueuesq;intI;sq.front=0;//隊列初始化sq.rear=0;for(I=0;I<5;I++){sq.data[I]=I*I;sq.rear++;}//元素入隊,建立原始隊列printf("\n初始隊列為:\n");prin(&sq); //輸出隊列inqueue(&sq,99); //將元素99入隊printf("\n99入隊后隊列變?yōu)椋篭n");prin(&sq); //輸出隊列dequeue(&sq);//將隊首元素出隊printf("\n出隊一個元素后隊列變?yōu)椋篭n");prin(&sq); //輸出隊列}三、寫出一個借助于棧將一個單鏈表逆置的C語言函數(shù),并上機(jī)調(diào)試。#include"stdio.h"#include"stdlib.h"#defineStack_Size50typedefintelemtype;typedefstructnode{elemtypedata;structnode*next;}NODE,*NODEPTR;typedefstruct{intelem[Stack_Size];inttop;}SeqStack;intpush(SeqStack*S,intx){if(S->top==Stack_Size-1)return(0);S->top++;S->elem[S->top]=x;return(1);}intpop(SeqStack*S,int*x){if(S->top==-1){printf("stackempty");return(0);}else{*x=S->elem[S->top];S->top--;return(1);}}NODEPTRcreatelistf(){intch;NODEPTRhead;NODE*p;head=(NODEPTR)malloc(sizeof(NODE));head->next=0;scanf("%d",&ch);while(ch!=0){p=(NODE*)malloc(sizeof(NODE));p->data=ch;p->next=head->next;head->next=p;scanf("%d",&ch);}return(head);}voidnizhi(NODE*h){NODE*p;/*定義指向結(jié)點(diǎn)類型的指針*/SeqStacks;s.top=-1; p=h->next;while(p!=NULL){push(&s,p->data);p=p->next;}p=h->next;while(p!=NULL){pop(&s,&(p->data));p=p->next;}}voidprintlink(NODE*h){NODE*p;p=h->next;printf("\n");while(p!=0){printf("%d",p->data);p=p->next;}
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度全屋定制家居設(shè)計、生產(chǎn)、安裝一體化合同
- 甲乙丙三方2025年度能源供應(yīng)與采購合同
- 二零二五年度科技研發(fā)項目知識產(chǎn)權(quán)保護(hù)協(xié)議
- 2025年度智慧城市建設(shè)咨詢合同變更協(xié)議
- 2025年度跨境電商質(zhì)押擔(dān)保合同
- 二零二五年度互聯(lián)網(wǎng)干股合作協(xié)議書模板
- 二零二五年度購房意向金糾紛解決協(xié)議
- 2025年度智能小程序用戶權(quán)益保護(hù)服務(wù)協(xié)議
- 二零二五年度專業(yè)市場小時工雇傭協(xié)議
- 2025年度股東借款轉(zhuǎn)實(shí)收資本并設(shè)立新合資企業(yè)合同
- 人教版(2025新版)七年級下冊數(shù)學(xué)第七章 相交線與平行線 單元測試卷(含答案)
- 汽輪機(jī)輔機(jī)培訓(xùn)
- 國之重器:如何突破關(guān)鍵技術(shù)-筆記
- 三廢環(huán)保管理培訓(xùn)
- 21ZJ111 變形縫建筑構(gòu)造
- 管道吹掃、試壓檢驗(yàn)批質(zhì)量驗(yàn)收記錄表
- 教學(xué)教案、作業(yè)、記錄檢查記錄表
- DB33-T1091-2013《基坑工程鋼管支撐施工技術(shù)規(guī)程》
- 《中外歷史綱要上》第4課 西漢與東漢-統(tǒng)一多民族封建國家的鞏固(課件)(共23張PPT)
- 棕色偵探推理劇本殺活動方案項目介紹ppt模板
- 華中數(shù)控車床編程及操作PPT課件
評論
0/150
提交評論