实现冒泡排序、直接插入排序和直接选择排序的算法.doc

上传人:j****9 文档编号:3045082 上传时间:2019-05-18 格式:DOC 页数:11 大小:45.50KB
下载 相关 举报
实现冒泡排序、直接插入排序和直接选择排序的算法.doc_第1页
第1页 / 共11页
实现冒泡排序、直接插入排序和直接选择排序的算法.doc_第2页
第2页 / 共11页
实现冒泡排序、直接插入排序和直接选择排序的算法.doc_第3页
第3页 / 共11页
实现冒泡排序、直接插入排序和直接选择排序的算法.doc_第4页
第4页 / 共11页
实现冒泡排序、直接插入排序和直接选择排序的算法.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、实验报告 一、实验题目:冒泡排序、直接插入排序和直接选择排序的算法。 二、实验环境: window7、 mytc、计算机一台 三、实验目的:通过编程熟练掌握实现冒泡排序、直接插入排序和直接选择排序的算法。 四、实验内容: ( 1)输入数据运算字符。 首先输入冒泡排序的运算程序: #define N 4 void bustor(int x, int n) int i,j,m,k; for(i=1;ixj+1) m=xj; xj=xj+1; /*相邻两数交换 */ xj+1=m; k=0; /*本趟发生了数据交换 */ if(k=1)break; 之后运行主程序 main() /*程序由此开始 *

2、/ int aN+1,i; for(i=1;ixj+1) /*若前面的数大于后面的 数则交换 */ m=xj; xj=xj+1; /*相邻两数交换 */ xj+1=m; k=0; /*本趟发生数据交换 */ if(k=1)break; /*若第 i 趟未发生数据交换,则排序结束 */ main() /*程序由此开始 */ int aN+1,i; for(i=1;i=N;i+) scanf(“%d“, /*输入 N 个数 */ bustor(a,N); /*调入冒泡排序函数 */ for(i=1;i=N;i+) printf(“%4d“, /*输入排序后的序列 */ /*程序到此结束 */ 经检

3、查发现 void bustor(int x, int n),语句加了,导致程序运行错误。 for(j=1, j=n-1, j+)语句中应该是;导致程序运行错误 直接插入排序: 当运行此段程序发现运行结果与运行的用例应得的结果不同 #define N 7 void sis(int r, int n) int i,j; for(i=2;i=n;i+) /*从第 2 个数开始逐个插入 */ r0=ri; /*把待插数保存到 r0中 */ j=i-1; while(r0rj) /*待插数小于前面数时,做下面工作 */ rj+1=rj; /*前 面数据后移 1 位 */ j-; rj+1=r0; /*找

4、到了插入位置,第 i 个数插入完毕 */ main() /*程序由此开始 */ int aN+1,i; for(i=1;i=N;i+) scanf(“%d“,ai); /*输入 n 个数 */ sis(a,N); /*输入 n 个数 */ for(i=1;i=N;i+) printf(“%4d“,ai); /*程序到此结束 */ 经检验发现 scanf(“%d“, scanf(“%d“,ai); 语句没有地址符,导致程序运行错误,并且发现mytc 在 window7 系统中总出错,也不知是什么原因。 直接选择排序: 当运行此段程序发现运行结果与运行的用例应得的结果不同 #define N 6

5、void bustor(int x, int n) int i,j,m,k; for(i=1;i=n-1;i+) /*n 个数进行 n-1 趟排序 */ k=i; /*第 i 趟开始假设第 i 个数最小 */ for(j=i+1;j=n;j+) /*从第 i+1 个数到 n 个数找最小数的下标 k*/ if(xjxk) k=j; if(k!=i) /*若最小数不在第 i 个位置,则交换 */ m=xi; xi=xk; xk=m; /*返回 main 中 sestor( a, N);的下一句 */ main() /*程序由此开始 */ int aN+1,i; for(i=1;i=N;i+); scanf(“%d“, /*输入 N 个数 */ bustor(a,N); /*调用排序函数 */ for(i=1;i=N;i+) printf(“%4d“,ai); /*输出排序结果 */

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 重点行业资料库 > 医药卫生

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。