![[论文精品] 基于嵌入式系统的手持终端界面.doc_第1页](http://file.renrendoc.com/FileRoot1/2019-12/20/42a8acba-b9ab-4b30-9beb-3760c70fd865/42a8acba-b9ab-4b30-9beb-3760c70fd8651.gif)
![[论文精品] 基于嵌入式系统的手持终端界面.doc_第2页](http://file.renrendoc.com/FileRoot1/2019-12/20/42a8acba-b9ab-4b30-9beb-3760c70fd865/42a8acba-b9ab-4b30-9beb-3760c70fd8652.gif)
![[论文精品] 基于嵌入式系统的手持终端界面.doc_第3页](http://file.renrendoc.com/FileRoot1/2019-12/20/42a8acba-b9ab-4b30-9beb-3760c70fd865/42a8acba-b9ab-4b30-9beb-3760c70fd8653.gif)
![[论文精品] 基于嵌入式系统的手持终端界面.doc_第4页](http://file.renrendoc.com/FileRoot1/2019-12/20/42a8acba-b9ab-4b30-9beb-3760c70fd865/42a8acba-b9ab-4b30-9beb-3760c70fd8654.gif)
![[论文精品] 基于嵌入式系统的手持终端界面.doc_第5页](http://file.renrendoc.com/FileRoot1/2019-12/20/42a8acba-b9ab-4b30-9beb-3760c70fd865/42a8acba-b9ab-4b30-9beb-3760c70fd8655.gif)
已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
现场答辩成绩: 实验报告成绩: 总成绩: 自 动 化 学 院综合实验报告 题目:基于嵌入式系统的手持终端界面单位(二级学院): 自 动 化 学 院 学 生 姓 名: 专 业: 自动化 班 级: 学 号: 指 导 教 师: 设计时间: 2010 年 11 月自动化学院 制实验一:线性表的操作实验目的:参照给定的线性表顺序表类和链表类的程序样例,验证给出的线性表的常见算法实验内容:参照给定的线性表顺序表类和链表类的程序样例,验证给出的线性表的常见算法设计一个静态数组存储结构的顺序表类,要求编程实现如下任务:1)建立一个线性表,首先依次输人整数数据元素(个数根据自己的需要键盘给定)2)删除指定位置的数据元素(指定元素位置通过键盘输入)再依次显示删除后的线性表中的数据元素。3)查找指定数据的数据元素(指定数据的大小通过键盘输入),若找到则显示位置,若没有找到就显示0。实验原理1.删除指定元素当线性表为空时为上溢错误,不能进行删除操作,算法结束。当或者时,顺序表中没有这个元素,输出提示用户错误。然后从第个元素开始,直到最后一个元素,其中每一个元素均依次往前移动一个位置,最后将线性表的长度减1。2.查找当线性表为空时,无法进行查找操作,算法结束。从第一个元素开始,把线性表中的元素与需要查找的元素比较,相等输出其下标,并返回。3.检测顺序表状态利用先行表的长度为0还是等于其容量,判断其是否为空和满,输出信息提示用花上溢或者下溢。4.输出表中元素利用循环,语句顺序输出表中元素5.插入或者表中元素初始化当存储空间满时,输出上溢错误,不能进行插入操作,算法结束。当实,认为在最后一个元素之后插入。当时,认为在第一个元素之前插入。从最后一个元素开始,直到第个元素,其中每一个元素均往后移动一个位置,将新元素插入到第个位置,并将线性表的长度加1。实验问题存在的问题查找指定数据的元素时,当元素存在的时候就显示该元素位子,不存在就什么也不显示。实验结果附:源程序#includeusing namespace std;#include#define list_init_size 100#define listincrement 10#define overflow -1#define ok 1#define error 0typedef int status;typedef int elemtype;typedef int keytype;typedef struct elemtype *elem; keytype *key; int length; int listsize;sqlist;typedef struct keytype key;selemtype;status initlist (sqlist &l)/*创建顺序表*/ int length1; printf(请确定顺序表的长度:); scanf(%d,&length1); l.listsize=length1; l.elem=(elemtype*)malloc(length1*sizeof(elemtype); if(!l.elem) printf(out of space); exit(overflow); l.length=0; return ok; status listinsert (sqlist &l,int i, elemtype e)elemtype *p,*q,*newbase; if(il.length+1) return error; if(l.lengthl.listsize) newbase=(elemtype*)realloc(l.elem,(l.listsize+listincrement)*sizeof(elemtype); if (newbase=null) printf(out of space); return (overflow); l.listsize+=listincrement; p=&( l.elemi-1); for (q=&(l.eleml.length-1) ;q=p;q-) *(q+1)=*q; l.elemi-1=e; l.length+; return ok;/*在i元素的前面插入元素e*/status deletelist (sqlist &l,int i) elemtype *q ,*p; if(il.length) return error; q = &(l.elemi-1); p = l.elem+l.length-1; for (q+; q = p; q+) *(q-1) = *q; l.length-; return ok;/*删除i个元素*/status listsearch(sqlist &l,int w)int i,j,k;i=1;j=l.length;while(iw)j=k-1;else i=k+1;return(0);/*查找元素,找到显示位置,找不到不进行操作(这里想不到怎么实现返回0)*/int main() sqlist l; int i,e,w; initlist (l); printf(请输入元素:n); for(i=0;il.listsize;i+) scanf(%d,&(l.elemi); l.length+; printf(创建线性表为:n); for(i=0;il.listsize;i+) printf(%4d,l.elemi); printf(n); printf(n); printf(请输入要删除的元素的位置:) ; scanf(%d,&i); deletelist(l, i ) ; printf(删除后的线性表为:n); for(i=0;il.length;i+) printf(%4d,l.elemi); printf(n); printf(n); printf(请输入要插入的位置和元素:) ; scanf(%d%d,&i,&e); listinsert (l,i,e); printf(插入元素后的线性表为:n); for(i=0;il.length;i+) printf(%4d,l.elemi); printf(n); printf(n);printf(请输入要查找的元素:n);scanf(%d,&w);listsearch(l,w); printf(n); printf(n); return ok; /*主函数部分*/实验二 栈、队列的操作一、实验目的:参照给定的栈类和队列类的程序样例,验证给出的栈和队列的常见算法,并结合线性表类实现有关串的操作。二、实验要求:1、掌握栈、队列、串的特点。掌握特殊线性表的常见算法。2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。三、实验内容: 1. 堆栈类测试和应用问题。要求: 定义数据元素的数据类型为如下形式的结构体:typedef struct char taskname10;/任务名 int taskno;/任务号 datatype; .2. 队列类测试和应用问题。要求: 设计一个主函数对循环队列类和链式队列类代码进行测试.测试方法为:依次把数据元素1,2,3,4,5入队,然后出队中的数据元素并在屏幕上显示。四、要求1)栈和队列的长度都由自己定;2)写出完整的程序并能调试通过即可。3)重点理解栈、队列和串的算法思想,能够根据实际情况选择合适的存储结构。 4)栈、队列的算法是后续实验的基础(树、图、查找、排序等)。实验三 排序综合实验(2学时)实验类型:综合性 实验要求:必修实验学时: 2学时一、实验目的:参照各种排序算法程序样例,验证给出的排序常见算法。 二、实验要求:1、掌握各种排序算法的特点,测试并验证排序的常见算法。2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。三、实验内容:1、直接插入排序2、冒泡排序3、快速排序(递归)4、快速排序(非递归)5、堆排序实验结果:源程序:#include #define maxsize 10#define null 0int amaxsize=0;/*直接插入排序*/void directinsertionsort(int *p,int num)/指针p用来指向要排序的数组的第一元素,num用来表示要排序数组的大小int temp;for(int i=num-1;i=0;i-)for(int j=0;ji;j+)if(pipj)temp=pi;pi=pj;pj=temp;/*int i,j,temp;for(i=1;inum;i+)if(pipi-1)temp=pi;pi=pi-1;for(j=i-1;p0pj;j-)pj+1=pj; pj+1=temp;*/*冒泡排序*/void bubblesort(int *p,int num)int temp;for(int i=0;i0;j-) if(pjright) return; while(i!=j) while(aj=temp & ji) j-; if(ji) ai+=aj; while(aii) i+; if(ji) aj-=ai; ai=temp; quicksort(a,left,i-1);/递归左边 quicksort(a,i+1,right);/递归右边/*快速排序非递归*/void non_recurcive_quicksort(int *p,int num)int i,j,low,high,temp,top=-1;struct node int low,high; st100;top+;sttop.low=0;sttop.high=num-1;while(top-1) low=sttop.low;high=sttop.high;top-;i=low;j=high;if(lowhigh) temp=plow;while(i!=j) while(itemp)j-;if(ij)pi=pj;i+;while(ij&pitemp)i+;if(ij)pj=ai;j-;pi=temp;top+;sttop.low=low;sttop.high=i-1;top+;sttop.low=i+1;sttop.high=high;/*堆排序*/void shift(int *p, int i , int m)/建堆int k,t; t = pi; k=2*i+1; while (km) if (km-1)&(pkpk+1)k+; if (t=0;i-) shift(p,i,num); for (i=num-1; i=1;i-) k=p0;p0=pi;pi=k;shift(p,0,i); /*主函数*/void main(void)int choose=0;int *p=null;printf(请输入数据:n);for(int i=0;imaxsize;i+)scanf(%d,&ai);printf(排序前:n);for(i=0;imaxsize;i+)printf(%d ,ai);p=a;printf(请选择执行命令:n);printf(1 直接插入排序 2 冒泡排序 3 快速排序 4 快速排序非递归 5 堆排序n);scanf(%d,&choose);switch(choose)case 1:directinsertionsort(p,maxsize);break;case 2:bubblesort(p,maxsize);break;case 3:quicksort(p,0,maxsize-1);break;case 4:non_recurcive_quicksort(p,maxsize);break;case 5:heapsort(p,maxsize);break;default:break;printf(排序后:n);for(i=0;imaxsize;i+)printf(%d ,ai);printf(n);/*void main()int *p;printf(请输入数据:n);for(in
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 丹阳市2025年江苏丹阳市事业单位集开招聘工作人员65人笔试历年参考题库附带答案详解
- 2025甘肃人力资源服务股份有限公司招聘36人(第一期)笔试参考题库附带答案详解
- 2025年甘肃省临夏亿农农牧投资有限公司招聘80人笔试参考题库附带答案详解
- 2025山东省国际信托股份有限公司招聘8人笔试参考题库附带答案详解
- 2025安徽菱安医疗器械有限公司招聘操作工等岗位14人笔试参考题库附带答案详解
- 2025四川南充市蓬州发展投资集团有限责任公司招聘10人笔试参考题库附带答案详解
- 2025中广国际有限公司高校毕业生招聘2人笔试参考题库附带答案详解
- 2025上半年浙江金华金义新区发展集团招聘11人笔试参考题库附带答案详解
- 危险废物安全培训记录课件
- 地铁反恐安全培训内容课件
- 通信工程安全员考试题库案例题汇总
- 频谱监测及瞬态信号捕获技术课件
- 宣城万里纸业有限公司年产15万吨高强度瓦楞包装用纸及5万吨纱管纸技改项目环境影响报告书
- 贵州某二级公路施工组织设计KK
- 推广普通话课件
- GB/T 16714-2007连续式粮食干燥机
- 五年级《欧洲民间故事》知识考试题库(含答案)
- 派车单(标准样本)
- 少先队大队委申请表
- 浦东机场手册
- 柴油机负荷特性曲线比较课件
评论
0/150
提交评论