电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

华南农业大学数据结构上机答案实验(共59页)

59页
  • 卖家[上传人]:博****1
  • 文档编号:472394171
  • 上传时间:2022-11-26
  • 文档格式:DOCX
  • 文档大小:27.23KB
  • / 59 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、精选优质文档-倾情为你奉上华南农业大学数据结构上机答案实验 8583 顺序栈的基本操作时间限制:1000MS 内存限制:1000K提交次数:530 通过次数:212 题型: 编程题 语言: 无限制Description创建一个空的顺序栈,并实现栈的入栈、出栈、返回栈的长度、返回栈顶元素、栈的遍历等基本算法。请将下#include<malloc.h> #include<stdio.h> #define OK 1#define ERROR 0#define STACK_INIT_SIZE 100 / 存储空间初始分配量#define STACKINCREMENT 10 / 存储空间分配增量typedef int SElemType; / 定义栈元素类型typedef int Status; / Status是函数的类型,其值是函数结果状态代码,如OK等struct SqStackSElemType *base; / 在栈构造之前和销毁之后,base的值为NULLSElemType *top; / 栈顶指针int stacksize; / 当前已分配的存储空间,以元素

      2、为单位; / 顺序栈Status InitStack(SqStack &S) / 构造一个空栈S,该栈预定义大小为STACK_INIT_SIZE/ 请补全代码S.base=(SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType);if(!S.base) return ERROR;S.top=S.base;S.stacksize=STACK_INIT_SIZE;return OK;Status Push(SqStack &S,SElemType e) / 在栈S中插入元素e为新的栈顶元素/ 请补全代码if(S.top-S.base>=S.stacksize)S.base=(SElemType*)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(SElemType);if(!S.base) return ERROR;S.top=S.base+S.stacksize;S.stacksize+=STACKINCREMENT;*S.top+=e;return OK;Statu

      3、s Pop(SqStack &S,SElemType &e) / 若栈不空,则删除S的栈顶元素,用e返回其值,并返回OK;否则返回ERROR/ 请补全代码if(S.top=S.base) return ERROR;e=*-S.top;return OK;Status GetTop(SqStack S,SElemType &e) / 若栈不空,则用e返回S的栈顶元素,并返回OK;否则返回ERROR/ 请补全代码if(S.top=S.base) return ERROR;e=*(S.top-1);return OK;int StackLength(SqStack S) / 返回栈S的元素个数/ 请补全代码return S.top-S.base;Status StackTraverse(SqStack S)/ 从栈顶到栈底依次输出栈中的每个元素SElemType *p = (SElemType *)malloc(sizeof(SElemType); p = S.top ; /请填空if(S.top=S.base)printf("The Stack is Em

      4、pty!"); /请填空elseprintf("The Stack is: ");p-;while(p>=S.base) /请填空printf("%d ", *p);p- ; /请填空printf("n");return OK;int main()int a;SqStack S;SElemType x, e;if(InitStack(S) / 判断顺序表是否创建成功,请填空printf("A Stack Has Created.n");while(1)printf("1:Push n2:Pop n3:Get the Top n4:Return the Length of the Stackn5:Load the Stackn0:ExitnPlease choose:n");scanf("%d",&a);switch(a)case 1: scanf("%d", &x);if(!Push(S,x) printf(&quo

      5、t;Push Error!n"); / 判断Push是否合法,请填空else printf("The El ement %d is Successfully Pushed!n", x); break;case 2: if(!Pop(S,e) printf("Pop Error!n"); / 判断Pop是否合法,请填空else printf("The Element %d is Successfully Poped!n", e);break;case 3: if(!GetTop(S,e)printf("Get Top Error!n"); / 判断Get Top是否合法,请填空else printf("The Top Element is %d!n", e);break;case 4: printf("The Length of the Stack is %d!n",StackLength(S); /请填空break;case 5: StackTraverse

      6、(S); /请填空break;case 0: return 1;8584 循环队列的基本操作时间限制:1000MS 内存限制:1000K提交次数:366 通过次数:157 题型: 编程题 语言: 无限制Description创建一个空的循环队列,并实现入队、出队、返回队列的长度、返回队头元素、队列的遍历等基本算法。请将下面的程序补充完整。#include<malloc.h> #include<stdio.h> #define OK 1#define ERROR 0typedef int Status; / Status是函数的类型,其值是函数结果状态代码,如OK等typedef int QElemType;#define MAXQSIZE 100 / 最大队列长度(对于循环队列,最大队列长度要减1)typedef structQElemType *base; / 初始化的动态分配存储空间int front; / 头指针,若队列不空,指向队列头元素int rear; / 尾指针,若队列不空,指向队列尾元素的下一个位置SqQueue;Status InitQueue

      7、(SqQueue &Q) / 构造一个空队列Q,该队列预定义大小为MAXQSIZE/ 请补全代码Q.base=(QElemType*)malloc(MAXQSIZE*sizeof(QElemType);if(!Q.base) return ERROR;Q.front=Q.rear=0;return OK;Status EnQueue(SqQueue &Q,QElemType e) / 插入元素e为Q的新的队尾元素/ 请补全代码if(Q.rear+1)%MAXQSIZE=Q.front)return ERROR;Q.baseQ.rear=e;Q.rear=(Q.rear+1)%MAXQSIZE;return OK;Status DeQueue(SqQueue &Q, QElemType &e) / 若队列不空, 则删除Q的队头元素, 用e返回其值, 并返回OK; 否则返回ERROR/ 请补全代码if(Q.front=Q.rear)return ERROR;e=Q.baseQ.front;Q.front=(Q.front+1)%MAXQSIZE;return

      8、 OK;Status GetHead(SqQueue Q, QElemType &e)/ 若队列不空,则用e返回队头元素,并返回OK,否则返回ERROR/ 请补全代码if(Q.front=Q.rear) return ERROR;e=Q.baseQ.front;return OK;int QueueLength(SqQueue Q) / 返回Q的元素个数/ 请补全代码return (Q.rear+MAXQSIZE-Q.front)%MAXQSIZE;Status QueueTraverse(SqQueue Q) / 若队列不空,则从队头到队尾依次输出各个队列元素,并返回OK;否则返回ERROR.int i;i=Q.front;if(Q.front=Q.rear)printf("The Queue is Empty!"); /请填空elseprintf("The Queue is: ");while(i<Q.rear) /请填空printf("%d ",Q.basei); /请填空i = i+1; /请填空printf("n");return OK;int main()int a;SqQueu e S;QElemType x, e;if(InitQueue(S) / 判断顺序表是否创建成功,请填空printf("A Queue H

      《华南农业大学数据结构上机答案实验(共59页)》由会员博****1分享,可在线阅读,更多相关《华南农业大学数据结构上机答案实验(共59页)》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.