数据结构课设——队列程序探究.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
成绩评定表学生姓名班级学号专业计算机科学与技术课程设计题目计算机外部输出设备(如显示器)和的CPU处理数据的速度不同。按先来先服务的方式进行管理,设计缓冲队列,实现外设与CPU的匹配评语组长签字:成绩日期2015 年12 月15 日课程设计任务书学 院信息科学与工程学院专 业计算机科学与技术学生姓名班级学号课程设计题目计算机外部输出设备(如显示器)和的CPU处理数据的速度不同。按先来先服务的方式进行管理,设计缓冲队列,实现外设与CPU的匹配。实践教学要求与任务:任务:计算机外部输出设备(如显示器)和的CPU处理数据的速度不同。按先来先服务的方式进行管理,设计缓冲队列,实现外设与CPU的匹配。要求:1)对相应的题目进行算法设计2)编写源代码3)上机调试4)显示调试结果5)写出实验总结工作计划与进度安排:数据结构课程设计时间安排在教学第14周、第15周内完成,按上述题目要求完成查阅资料、程序设计、调试、运行等工作。时间安排如下:查阅资料、与初步设计;1-2天整体功能设计、代码编码与初步调试。1-3天调试和软件功能的测试和验收。1-3天答辩与论文撰写。1-2天指导教师:2015年11月28日专业负责人:2015年11月28日学院教学副院长:2015年11月28日目录一、题目概述(内容及要求)1二、功能分析4三、设计6四、运行与测试7五、总结8参考文献13题目概述(内容及要求)内容:计算机外部输出设备(如显示器)和的CPU处理数据的速度不同。按先来先服务的方式进行管理,设计缓冲队列,实现外设与CPU的匹配。要求:1)对相应的题目进行算法设计2)编写源代码3)上机调试4)显示调试结果功能分析功能模块图程序主要功能分为三个部分:第一个部分为创建队列。创建一个尾插的链表存储数据第二部分为删除队列元素,根据队列特点,应从链表头部删除元素第三部分为查询队列元素,经过查询经过一系列处理后,队列中的元素。在程序的主体main函数中设计程序菜单,通过用户输入选择实现种种功能2.程序流程图Main函数流程设计图:通过一个while循环来实现菜单的设计,内部用switch语句实现对不同功能的函数的调用。设计根据题目要求,是要设计一个队列程序,队列的特点为先进先出。因此根据该特点我设计了一个尾插头删的链表。数据在内存中链式存储,用一个Creat()函数实现对链表的创建。Creat()函数代码如下:struct data * Creat(struct data * front, struct data * real){struct data * p;real = (struct data *)malloc(sizeof(struct data));p = real;p -num = n + 1;printf(当前用户编号:%d \n, p-num);printf(输入证件尾号和用户姓名(中间都好分隔):);scanf(%d,%s, p -realnum, p-name);while(p -realnum != 0){n += 1;if(n == 1){front = p;}else{real-next = p;}real = p;p = (struct data *)malloc(sizeof(struct data));p -num = n + 1;printf(当前用户编号:%d \n, p-num);printf(输入证件尾号和用户姓名(中间都好分隔,输入0退出):\n);scanf(%d,%s, p -realnum, p-name);}real -next = NULL;return (front);}以上函数实现了队列的后进特点,而先出特点则由del()函数实现del()函数代码如下:struct data * del(struct data * front){struct data * p = NULL;if(front != NULL){p = front -next;front -next = NULL;printf(第%d号用户:%s业务办理完毕\n, front -num, front -name);}elseprintf(当前无人排队办理业务!!!\n);return (p);}最后一部分为查看队列元素函数,代码如下:void print(struct data * front){struct data * p;printf(现在排队办理业务的人有:\n);p = front;if(front !=NULL){do{printf(序号:%d, 姓名:%s\n, p-num, p-name);p = p-next;}while(p != NULL);}}设计思路:首先程序采用菜单,用户需要输入与操作相对应的序号选项来运行程序。其次,在

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档