冒泡排序:
#include<stdio.h>
int main(void)
{
int a[10] = { 5,9,10,7,4,2,1,0,3,8 };
int i, k,temp;
for (i = 9; i >= 1; i--) {
for (k = 0; k < i; k++) {
if (a[k] > a[k + 1]) {
temp = a[k];
a[k] = a[k + 1];
a[k + 1] = temp;
}
}
}
for (i = 0; i < 10; i++)
printf("%d ", a[i]);
return 0;
}
插入排序:
#include<stdio.h>
int main(void)
{
int a[10] = { 5,9,10,7,4,2,1,0,3,8 };
int i, k, temp;
for (i = 1; i < 10; i++) {
for (k = i -1; k >=0; k--) {
if (a[k + 1] < a[k]) {
temp = a[k + 1];
a[k + 1] = a[k];
a[k] = temp;
}
else
break;
}
}
for (i = 0; i < 10; i++)
printf("%d ", a[i]);
return 0;
}
选择排序:
#include<stdio.h>
int main(void)
{
int a[10] = { 5,9,10,7,4,2,1,0,3,8 };
int i, k, temp, min;
for (i = 0; i < 9; i++) {
min = i;
for (k = i + 1; k < 10; k++)
if (a[min] > a[k]) min = k;
temp = a[i];
a[i] = a[min];
a[min] = temp;
}
for (i = 0; i < 10; i++)
printf("%d ", a[i]);
return 0;
}