史上最详细的C语言冒泡排序算法
未经同意,请勿转载。
1 void bubbing(){ 2 int init_arr[10] = {1,5,9,8,7,6,7,99,8,10};//define init the array 3 //going to the exinternal loop,start to loop from 0 4 int tmp; 5 int len = sizeof(init_arr)/4;//获取数组的长度,因为c语言的每个int型占四个字节,所除以4 6 for (int i = 0; i < len; i++) {//外层循环,从第一个数开始比较,每一轮下来,都能获取到一个最大值,然后放到数组最后面。 7 for (int j = 0; j < len-i-1; j++) {//j的初始值为也为0,但是遍历到len-i-1时就不再遍历了,因为len-j-1后面的值是已经排好序的值。 8 if (init_arr[j + 1] < init_arr[j]) {//开始进行判断,每一轮都通过判断相邻两个值大小,把大的放到后面。 9 int t = init_arr[j]; 10 init_arr[j] = init_arr[j+1]; 11 init_arr[j+1] = t; 12 } 13 14 }//printf("%d",init_arr[i]); 15 } 16 for (int k = 0; k < len-1 ; k++) {//进行打印排序好的数组 17 printf("%d\n",init_arr[k]); 18 } 19 20 }
版权声明:本文为szj666原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。