C语言程序 排序 ------------------ 冒泡法

2026-02-14 18:48:13

1、ubuntu 14.04 linux c

gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2

2、#include<stdio.h>

#include<stdlib.h>

#define DATA_SIZE 10

int main(void)

{

        int size = DATA_SIZE,i = 0,j = 0,temp = 0;

        int *buf =NULL;

        buf = (int *)malloc(sizeof(int) * size);

        printf("the array data before sort are[%d] : \n",size);

        for(i=0;i<size;i++)

        {

                buf[i] = rand()%1000;

                printf("%d,",buf[i]);

                if((i+1)%10 ==0)

                printf("\n");

        }

        printf("\n");

        for(i=0;i<size;i++)

        {

                for(j=0;j < size-i;j++)

                {

                        if(buf[j] > buf[j+1])

                        {

                                temp = buf[j+1];

                                buf[j+1] = buf[j];

                                buf[j] = temp;

                        }

                }

        }

        printf("the array data after sort are[%d] : \n",size);

        for(i=0;i<size;i++)

        {

                printf("%d,",buf[i]);

                if((i+1)%10 ==0)

                printf("\n");

        }

        free(buf);

        return 0;

}

3、xxx@linux:~/code# gcc -o bubble_sort bubble_sort.c 

xxx@linux:~/code# ./bubble_sort 

the array data before sort are[10] : 

383,886,777,915,793,335,386,492,649,421,

the array data after sort are[10] : 

335,383,386,421,492,649,777,793,886,915,

猜你喜欢