冒泡排序是C语言中算法的简单实现
什么是冒泡:
他重复的走访要排序的序列,一次比较俩个元素,如果顺序错误就交换,知道没有必要在交换就完成排序。
例子:
原序列:5 3 9 6 8 2 7
第一趟:3 5 6 8 2 7 9
第二趟:3 5 6 2 7 8 9
第三趟:3 5 2 6 7 8 9
第四趟:3 2 5 6 7 8 9
第五趟:2 3 5 6 7 8 9
实例程序:
1 #include <stdio.h> 2 int main() 3 { 4 int n; 5 printf("请输入数字个数:"); 6 scanf("%d",&n); 7 printf("请输入%d个数字:",n); 8 int num[n]; 9 int i; 10 for(i=0;i<n;i++) 11 { 12 scanf("%d",&num[i]); 13 } 14 //数组为num[n]开始排序 15 int temp; 16 int j; 17 for(i=0;i<n;i++) 18 { 19 for(j=0;j<n-1;j++) 20 { 21 if(num[j]>num[j+1]) 22 { 23 temp=num[j]; 24 num[j]=num[j+1]; 25 num[j+1]=temp; 26 } 27 } 28 } 29 printf("排序之后为:"); 30 for(i=0;i<n;i++) 31 { 32 printf("%d ",num[i]); 33 } 34 return 0; 35 }
===========================================================