![电子科技大学软件技术基础实验报告(共7页)_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/9af7cb9f-334b-45fd-b7c3-5b1003321e63/9af7cb9f-334b-45fd-b7c3-5b1003321e631.gif)
![电子科技大学软件技术基础实验报告(共7页)_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/9af7cb9f-334b-45fd-b7c3-5b1003321e63/9af7cb9f-334b-45fd-b7c3-5b1003321e632.gif)
![电子科技大学软件技术基础实验报告(共7页)_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/9af7cb9f-334b-45fd-b7c3-5b1003321e63/9af7cb9f-334b-45fd-b7c3-5b1003321e633.gif)
![电子科技大学软件技术基础实验报告(共7页)_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/9af7cb9f-334b-45fd-b7c3-5b1003321e63/9af7cb9f-334b-45fd-b7c3-5b1003321e634.gif)
![电子科技大学软件技术基础实验报告(共7页)_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/9af7cb9f-334b-45fd-b7c3-5b1003321e63/9af7cb9f-334b-45fd-b7c3-5b1003321e635.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上电子科技大学 通信与信息工程 学院标 准 实 验 报 告(实验)课程名称 软件技术基础实验 电子科技大学教务处制表电 子 科 技 大 学实 验 报 告一、实验室名称:校公共机房 二、实验项目名称:查找与排序三、实验学时:4学时四、实验原理:使用VS2010等C语言集成开发环境(IDE),在微型计算机上对程序进行编辑、编译、连接与运行。通过上机练习掌握顺序查找、二分查找函数、简单选择法、直接插入法、冒泡法排序、快速排序等方法、过程和实际应用。五、实验目的:1. 熟练掌握顺序查找、二分查找函数、简单选择法、直接插入法、冒泡法排序、快速排序等算法方法并实现。2. 掌握课程平
2、台使用方法。六、实验内容:ex5_1:查找 设有序序列的数据元素为:(3,10,13,17,40,43,50,70)1)编写顺序查找函数2)编写二分查找函数3)在主程序中输入关键字(43和5),分别调用两种查找函数,输出结果。/第一题#include <stdio.h>#define maxnum 20typedef struct int datamaxnum; int length;list_type;void create(list_type *l) l->length=8; l->data0=3; l->data1=10; l->data2=13; l
3、->data3=17; l->data4=40; l->data5=43; l->data6=50; l->data7=70;void shunxucz(list_type *l,int a1,int a2) int i,flag=0; printf("-n"); printf("顺序查找法:n"); for(i=0;i<l->length;i+) if(a1=l->datai) printf("%d是第%d个元素n",a1,(i+1);flag=flag+1; if(flag=0) p
4、rintf("表中没有大小为%d的元素n",a1); flag=0; for(i=0;i<l->length;i+) if(a2=l->datai) printf("%d是第%d个元素n",a2,(i+1);flag=flag+1; if(flag=0) printf("表中没有大小为%d的元素n",a2);void erfencz(list_type *l,int a1,int a2) printf("-n"); printf("二分查找法:n"); int low,h,m,
5、flag=0,i; low=0; h=l->length-1; for(i=0;i<l->length;i+) m=(low+h)/2; /如果有小数就向小的数字取值9/2=4 if(l->datam=a1) printf("%d是第%d个元素n",a1,(m+1);flag=1;break; else if(l->datam<22) low=m+1; else if(l->datam>22) h=m-1; if(flag!=1) printf("表中没有大小为%d的元素n",a1); flag=0; lo
6、w=0; h=l->length-1; for(i=0;i<l->length;i+) m=(low+h)/2; /如果有小数就向小的数字取值9/2=4 if(l->datam=a2) printf("%d是第%d个元素n",a2,(m+1);flag=1;break; else if(l->datam<22) low=m+1; else if(l->datam>22) h=m-1; if(flag!=1) printf("表中没有大小为%d的元素n",a2);int main() int flag1=43
7、,flag2=5; list_type list,list1,list2; create(&list);create(&list1);create(&list2); shunxucz(&list1,flag1,flag2); erfencz(&list1,flag1,flag2); printf("-n");ex5_2:排序1)编写简单选择法函数2)编写直接插入法函数3)编写冒泡法排序函数4)编写快速排序函数5)在主程序中输入一组数据元素(513,87,512,61,908,170,897,275,653,462),分别调用4种排序函
8、数,输出每趟排序结果。/第二题#include <stdio.h>#define maxnum 20typedef struct int datamaxnum; int length;list_type;void create(list_type *l) l->length=10; l->data0=513; l->data1=87; l->data2=512; l->data3=61; l->data4=908; l->data5=170; l->data6=897; l->data7=275; l->data8=653
9、; l->data9=462;void charupx(list_type *l) printf("-n"); printf("插入排序法:n"); printf("分步过程:n"); int i,j,k; int temp; for ( i=1; i<l->length; i+) temp=l->datai; j=i-1; while (j>=0)&& (temp<l->dataj) l->dataj+1=l->dataj; j=j-1; l->dataj+
10、1=temp; if(i=9) printf("最终结果:n"); for(k=0;k<l->length;k+) printf(" %d ",l->datak); printf("n"); void maopaopx(list_type *l) int temp; int i,j,k; printf("-n"); printf("冒泡排序法:n"); printf("分步过程:n"); for(i=0;i<l->length;i+) for(j
11、=i+1;j<l->length;j+) if(l->datai>l->dataj) temp=l->datai;l->datai=l->dataj;l->dataj=temp; if(i=9) printf("最终结果:n"); for(k=0;k<l->length;k+) printf(" %d ",l->datak); printf("n"); void xuanzepx(list_type *l) int temp,i,j,k; printf("
12、;-n"); printf("选择排序法:n"); printf("分步过程:n"); for(i=0;i<l->length;i+) for(j=i;j<l->length;j+) if(l->dataj<l->datai) temp=l->dataj; l->dataj=l->datai; l->datai=temp; if(i=9) printf("最终结果:n"); for(k=0;k<l->length;k+) printf("
13、 %d ",l->datak); printf("n"); void quick_sort( int *a, int low, int high)int i = low, j = high;int temp = a low;if( low >= high) return;while( i != j)while( i < j && a j >= temp)j-;a i = a j;while( i < j && a i <= temp)i+;a j = a i;a i = temp;quick_so
14、rt( a, low, i - 1); quick_sort( a, i + 1, high);for(i=0; i<high+1; i+) printf(" %d ", ai); printf ("n");int main()int i; list_type list,list1,list2,list3; create(&list);create(&list1);create(&list2);create(&list3); xuanzepx(&list2); charupx(&list); maopaopx(&list1);printf("-n"); printf("快速排序法:n");
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 装修房屋出租协议书范本
- 自来水管道安装合同范本
- 青岛版数学八年级下册《回顾与总结》听评课记录
- 听评课记录范文数学
- 陶土烧结砖施工方案
- 数学竞赛训练教程
- 实验全程实践报告
- 个人授权委托书模板五篇
- 人教版历史八年级下册第19课《社会生活的变迁 》听课评课记录
- 五年级上册数学听评课记录《4.5 探索活动:梯形的面积》(5)-北师大版
- 农产品质量安全控制课件
- 尿失禁健康讲座(SUI)
- lovo操作手册中文翻译版-professorgong
- 南网5S管理、四步法、八步骤
- 幼儿园中班健康:《小河马的大口罩》 课件
- 管道工程污水管网监理规划(共44)
- 洪屏抽水蓄能电站达标投产策划方案
- 危货运输车辆日常维护检查及记录表
- 公司生产报废单
- 心身疾病优秀课件
- Q∕SY 1342-2010 终端计算机安全管理规范
评论
0/150
提交评论