#include<stdio.h>
/*冒泡排序*/
main()
{
int a[6] = { 34,19,11,109,3,56 };
int i, t, temp;
for (i = 0; i < 5; i++)/*循环5趟*/
{
for (t = 0; t < 5 - i; t++)
{
if (a[t] > a[t + 1])
{
temp = a[t];
a[t] = a[t + 1];
a[t + 1] = temp;
}
}
}
for (i = 0; i < 6; i++)
{
printf("%d\t",a[i]);
}
getchar();
}
2.选择排序
#include<stdio.h>
/*选择排序*/
main()
{
int a[6] = { 34,19,11,109,3,56 };
int i, t, temp;
for (i = 0; i < 5; i++)//外层只需拿四次
{
for (t = i + 1; t < 6; t++)
{
if (a[i] > a[t])
{
temp = a[i];
a[i] = a[t];
a[t] = temp;
}
}
}
for (i = 0; i < 6; i++)
{
printf("%d\t",a[i]);
}
getchar();
}
3.插入排序
#include<stdio.h>
void insertSort(int arr[],int length) {
int temp;
int i, j;
for (i = 1; i < length; i++) {
temp = arr[i];
j = i - 1;
while (j>=0 && temp < arr[j]) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = temp;
}
}
void print(int arr[],int length) {
int index;
for (index = 0; index < length; index++) {
printf("%d\t",arr[index]);
}
}
int main()
{
int arr[] = { 10,9,56,48,566,45,12,35,45,62 };
insertSort(arr,10);
print(arr,10);
getchar();
return 0;
}