首页 > 代码库 > 选择排序
选择排序
/**** @author:hushunfeng** 选择排序,从大到小排列*/#include<stdio.h>//在所给数组的一段区间内计算出最大值//并得到其最大元素的下标int getMaxIndex(int array[],int k,int len) { //每一轮最大值所在的下标 int index = 0; int tempMax; int i; for(i=k;i<len;i++) { if(array[i]>tempMax) { tempMax = array[i]; index = i; } } //return return index;}//每轮得到的最大元素和所在区间最前面的元素进行互换void swapElement(int array[],int index,int k) { int temp; temp = array[k]; array[k] = array[index]; array[index] = temp;}//程序入口void main() { //定义输入的整型数组长度为10 #define LEN 10 int array[LEN]; int index; int k; int i; int count; printf("请输入%d个整型数据:",LEN); for(count=0;count<LEN;count++) { scanf("%d",&array[count]); } for(k=0;k<(LEN-1);k++) { index = getMaxIndex(array,k,LEN); swapElement(array,index,k); } printf("输入的数据从大小排序为:"); for(i=0;i<LEN;i++) { printf("%d ",array[i]); }}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。