C語言 冒泡排序複習

# include <stdio.h>數組

# include <malloc.h>ide


void movput(int* q, int len)//1.給數組分配一個動態空間spa

{排序

q= (int*)malloc(sizeof(int)*len);input


}it



void input(int* p, int len)//2.讓用戶輸入要比較的數字io

{class

for(int i=0; i<len; ++i)sort

{tab

printf("請輸入第%d個元素:",i+1);

scanf("%d",&p[i]);

}


}




void sort(int* p,int len)//3.把輸入的數字排序

{

int i, j, t;

for(i=1; i<len; ++i)

{

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

{

if (p[j] < p[j+1])

{

t = p[j];

p[j] = p[j+1];

p[j+1] = t;

}


}

}

}



void prt(int* p,int len) //4.輸出排序後的數字

{

for(int i=0; i<len; ++i)

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

}


int main(void)

{

int a[5];     //定義一個數組

movput(a,5);   //給數組分配一個動態空間

input(a,5);     //讓用戶輸入要比較的數字

sort(a,5); //把輸入的數字排序

prt(a,5);  //輸出排序後的數字

free(a);            //釋放 a 數組所佔空間


return 0;

}