欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年队列的顺序表示和实现 .pdf

    • 资源ID:30560671       资源大小:290.64KB        全文页数:5页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年队列的顺序表示和实现 .pdf

    #include /*此为循环队列 */ #include #include #define MAXNUM 10 #define Elemtype int #define TRUE 1 #define FALSE 0 typedef struct Elemtype queueMAXNUM; int front; int rear; sqqueue; int initQueue(sqqueue * q) if(!q)return FALSE; q-front=0; q-rear=0; return TRUE; int append(sqqueue * q,Elemtype x) if(q-rear+1)%MAXNUM=q-front)printf(n 队列满 !); return FALSE; q-queueq-rear=x;q-rear=(q-rear+1)%MAXNUM; return TRUE; int Delete(sqqueue * q) Elemtype x; if(q-front=q-rear) printf( 队列空 !n); return 0; x=q-queueq-front;q-front=(q-front+1)%MAXNUM; printf(n 队头元素 %d 出队!n,x); return TRUE; int Empty(sqqueue * q) if(q-front=q-rear) #include /*此为普通队列 */ #include #include #define MAXNUM 100 #define Elemtype int #define TRUE 1 #define FALSE 0 typedef struct Elemtype queueMAXNUM; int front; int rear; sqqueue; int initQueue(sqqueue * q) if(!q)return FALSE; q-front=-1; q-rear=-1; return TRUE; int append(sqqueue * q,Elemtype x) if(q-rear=MAXNUM-1) return FALSE; q-rear+; q-queueq-rear=x; return TRUE; Elemtype Delete(sqqueue * q) Elemtype x; if(q-front=q-rear) printf( 队列空 !n); return 0; x=q-queue+q-front; printf(n 队头元素 %d 出队 !n,x); return x; int Empty(sqqueue * q) if(q-front=q-rear) return TRUE; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - return TRUE; return FALSE; int gethead(sqqueue * q) Elemtype x; if(q-front=q-rear) printf( 队列空 !n);return 0; x=(q-queueq-front); printf( 队头元素为 :%dn,x); return x; void display(sqqueue * q) int s; s=q-front; if(q-front=q-rear) printf( 队列空 !n); else printf(n 顺序队列依次为:); while(s!=q-rear) printf(%dqueues); s=(s+1)%MAXNUM; printf(n); printf( 顺 序 队 列 的 队 尾 元 素 所 在 位置:rear= %dn,q-rear); printf( 顺 序 队 列 的 队 头 元 素 所 在 位置:front= %dn,q-front); printf(顺序队列的长度为 :%dn,(q-rear-q-front+MAXNUM)%MAXNUM); void Setsqqueue(sqqueue *q) int n,i,m; printf(n 请输入顺序队列的长度:); scanf(%d,&n); printf(n 请依次输入入顺序队列的元素return FALSE; int gethead(sqqueue * q) Elemtype x; if(q-front=q-rear) printf( 队列空 !n);return 0; x=(q-queueq-front+1); printf( 队头元素为 :%dn,x); return x; void display(sqqueue * q) int s; s=q-front; if(q-front=q-rear) printf( 队列空 !n); else printf(n 顺序队列依次为:); while(srear) s=s+1; printf(%dqueues); printf(n); printf(顺 序 队 列 的 队 尾 元 素 所 在 位置:rear= %dn,q-rear); printf(顺 序 队 列 的 队 头 元 素 所 在 位置:front= %dn,q-front); void Setsqqueue(sqqueue *q) int n,i,m; printf(n 请输入顺序队列的长度:); scanf(%d,&n); printf(n请依次输入入顺序队列的元素值:n); for(i=0;in;i+) scanf(%d,&m); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - 值:n); for(i=0;in;i+) scanf(%d,&m); append(q,m); void main() sqqueue *head; int x,select; head=(sqqueue*)malloc(sizeof(sqqueue); printf(n 第一次使用请初始化!n); do printf(=主菜单=n); printf(1 初始化 n); printf(2 建立顺序队列 n); printf(3 入队n); printf(4 出队n); printf(5 判断队列是否为空n); printf(6 取队头元素 n); printf(7 遍历队列 n); printf(0 结束程序运行 n); printf(=n); printf(n 请选择操作 (1-7):n); scanf(%d,&select); switch(select) case 1: initQueue(head); printf( 已经初始化顺序队列!n); break; case 2: Setsqqueue(head); printf(n 已经建立队列 !n); display(head); break; append(q,m); void main() sqqueue *head; int x,select; head=(sqqueue*)malloc(sizeof(sqqueue); printf(n 第一次使用请初始化!n); do printf(=主菜单=n); printf(1 初始化 n); printf(2 建立顺序队列 n); printf(3 入队 n); printf(4 出队 n); printf(5 判断队列是否为空n); printf(6 取队头元素 n); printf(7 遍历队列 n); printf(0 结束程序运行 n); printf(=n); printf(n 请选择操作 (1-7):n); scanf(%d,&select); switch(select) case 1: initQueue(head); printf( 已经初始化顺序队列!n); break; case 2: Setsqqueue(head); printf(n 已经建立队列 !n); display(head); break; case 3: printf( 请输入队的值:n); scanf(%d,&x); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - case 3: printf( 请输入队的值:n); scanf(%d,&x); append(head,x); display(head); break; case 4: Delete(head); display(head); break; case 5: if(Empty(head) printf( 队列空 n); else printf( 队列非空 n); break; case 6: gethead(head); break; case 7: display(head); break; case 0: exit(0); default: printf( 输入出错,请重新输入0-7 之间的数!n); while(select!=0); append(head,x); display(head); break; case 4: Delete(head); display(head); break; case 5: if(Empty(head) printf( 队列空 n); else printf( 队列非空 n); break; case 6: gethead(head); break; case 7: display(head); break; case 0: exit(0); default: printf( 输入出错,请重新输入0-7 之间的数!n); while(select!=0); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - 以循环队列为例:点击运行:输入 1,初始化:输入 2,建立顺序队列,按要求输入长度和元素值:输入 3,做入队操作:输入 4,出队操作:输入 5,判断是否为空:输入 6,取队头元素:输入 7,遍历队列:因为远程是不能实现当输入错误是的响应的,所以我将程序该了一下,当输入错误数值是,程序会提示错误,并要求输入正确的值:如下:当输入任何大于7 的数后:输入 0,结束程序:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -

    注意事项

    本文(2022年队列的顺序表示和实现 .pdf)为本站会员(Q****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开